Control system and method and engine control unit for internal combustion engine

ABSTRACT

There are provided a control system and method and an engine control unit for an internal combustion engine, which are capable of attaining a high combustion efficiency in both of a homogeneous and a stratified combustion modes, thereby improving drivability and fuel economy, as well as a control system for an internal combustion engine which is capable of ensuring stable combustion in both the modes. In one form of the invention, the control system includes an ECU for controlling ignition timing IG of an in-cylinder fuel injection type engine which is operated while switching the combustion mode between the homogeneous and stratified combustion modes. The ECU determines which of the homogeneous and stratified combustion modes should be selected.

RELATED APPLICATIONS

This application claims priority to Japanese Patent Application No. 243379/2000, filed on Aug. 10, 2000 in Japan, and Japanese Patent Application No. 243381/2000, filed on Aug. 10, 2000 in Japan. The contents of the aforementioned applications are hereby incorporated by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to a control system and method and an engine control unit for an internal combustion engine, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke.

2. Description of the Prior Art

Conventionally, as a control system for an internal combustion engine of a port injection type, an ignition timing control system, for instance, is known which has been proposed by Japanese Patent Publication (Kokoku) No. 7-59925. In this control system, the ignition timing is determined based on the amount of intake air and the rotational speed of the engine, and at the same time, the ignition timing is more retarded as the engine temperature is higher. The retardation of the ignition timing is carried out for prevention of knocking which tends to more readily occur as the combustion temperature rises with a rise in the engine temperature. Further, in the internal combustion engine of a port injection type, fuel is injected toward an intake port during the intake stroke, and an air-fuel mixture is subjected to homogeneous combustion in a state evenly distributed throughout the combustion chamber.

Further, an internal combustion engine of an in-cylinder injection type is also known which in which the combustion mode of the engine is switched between a homogeneous combustion mode in which fuel is injected during the intake stroke and a stratified combustion mode in which fuel is injected during the compression stroke. In general, in this type of internal combustion engine, in the homogeneous combustion mode, fuel is injected into the cylinder during the intake stroke, similarly to the above port injection-type engine, while in the stratified combustion mode, fuel is injected toward a piston during the compression stroke, and evaporated through thermal exchange with the piston to form an air-fuel mixture, and the mixture is subjected to stratified combustion in the state of the mixture being unevenly distributed or concentrated in the vicinity of the spark plug.

When the retardation of ignition timing by the conventional ignition timing control system described above is applied to the above in-cylinder injection-type engine, in the homogeneous combustion mode, knocking is prevented by the retardation of ignition timing based on the engine temperature since the mixture is subjected to homogeneous combustion similarly to the port injection-type engine. On the other hand, in the stratified combustion mode, since the mixture is subjected to stratified combustion, the ignitionability and conditions of occurrence of knocking ascribable to a rise in the engine temperature are different from those in the homogeneous combustion mode. Therefore, if the same retardation of ignition timing is carried out as in the homogeneous combustion mode, combustion efficiency can be degraded due to delay of ignition caused by the retardation of ignition timing which is carried out even though knocking does not occur. This leads to degraded drivability due to decreased engine output and poor fuel economy.

Further, as the aforementioned control system for an internal combustion engine of an in-cylinder fuel injection type, a control system for controlling the fuel injection timing and the amount of fuel to be injected is disclosed e.g. in Japanese Laid-Open Patent Publication (Kokai) No. 10-47111. In this control system, the volumetric efficiency is determined based on the intake air amount, and engine load (target average effective pressure) is determined based on accelerator opening and engine rotational speed. Further, the combustion mode is switched between the stratified combustion and the homogeneous combustion mode, is dependence on the engine rotational speed and engine load. Further, combustion parameters, such as a target air fuel ratio, fuel injection timing, ignition timing, and a target EGR rate, are determined by searching respective maps based on the engine rotational speed and engine load when the engine is in the stratified combustion mode, and based on the engine rotational speed and volumetric efficiency when the engine is in the homogeneous combustion mode.

Generally, in the in-cylinder injection-type engine, to enhance the fuel economy and reduce exhaust emissions, when the engine is in the stratified combustion mode, the EGR rate is controlled to a larger value and the intake pipe pressure is controlled to a higher value close to atmospheric pressure than when the engine is in the homogeneous combustion mode. That is, the valve opening of the EGR valve and the valve opening of the throttle valve are controlled to respective larger values. This can cause the target value of the EGR rate and that of the intake air amount to be largely changed, and in such a case, due to a large change in the intake air amount, the intake air can be unstable. In contrast, in the conventional control system described above, in the homogeneous combustion mode, the combustion parameters are calculated based on the volumetric efficiency determined based on the intake air amount, and therefore if the intake air becomes unstable upon transition to the homogeneous combustion mode, the combustion parameters cannot be calculated properly. This can lead to degraded fuel economy, increased exhaust emissions, and degraded drivability.

Further, in the stratified combustion mode, fuel is more difficult to ignite than in the homogeneous combustion mode, and the combustion is more likely to be unstable. Therefore, in the stratified combustion mode, to ensure stable combustion, the ignition timing is required to be set in a more optimized manner than in the homogeneous combustion mode. The conventional control system, however, in the stratified combustion mode, ignition timing is calculated only based on the accelerator opening and engine rotational speed, and hence it is impossible to set the ignition timing to an appropriate value in which the state of combustion and operating conditions of the engine are properly reflected.

SUMMARY OF THE INVENTION

It is a first object of the invention to provide a control system and method and an engine control unit for an internal combustion engine, which are capable of properly determining ignition timing in both of a homogeneous combustion mode and a stratified combustion mode to attain a high combustion efficiency, thereby improving drivability and fuel economy.

It is a second object of the invention to provide a control system and method and an engine control unit for an internal combustion engine, which are capable of properly determining combustion parameters including ignition timing, based on operating conditions and a state of combustion of the engine, such that stable combustion is ensured, thereby attaining improved fuel economy, excellent drivability, and reduced exhaust emissions.

To attain the first object, according to a first aspect of the invention, there is provided a control system for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control system controls ignition timing of the engine.

The control system according to the first aspect of the invention is characterized by comprising:

an engine temperature-detecting module for detecting an engine temperature of the engine;

a combustion mode-determining module for determining which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and

an ignition timing-setting module for setting a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time setting the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.

According to this control system, the combustion mode-determining module determines which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode, and the ignition timing-setting module sets a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time sets the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher. This enables the control system according to the first aspect of the invention to prevent occurrence of knocking as properly as in the prior art. Further, as described hereinbefore, the state of combustion of an air-fuel mixture is different between the stratified combustion mode and the homogeneous combustion mode, and hence ignitionability and conditions of occurrence of knocking are different between the two modes. Therefore, by setting the first ignition timing for the homogeneous mode and the second ignition timing for the stratified combustion mode to respective different values such that the above-mentioned difference in the ignitionability and conditions of occurrence of knocking value between the homogeneous combustion mode and the stratified combustion mode are reflected in the different values, it is possible to achieve high combustion efficiency even in the stratified combustion mode as well. As a result, it is possible to improve drivability and fuel economy both in the homogeneous combustion mode and the stratified combustion mode.

To attain the first object, according to a second aspect of the invention, there is provided a control method for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control method controls ignition timing of the engine.

The control method according to the second aspect of the invention is characterized by comprising the steps of:

detecting an engine temperature of the engine;

determining which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and

setting a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time setting the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.

This control method provides the same advantageous effects as described above concerning the control system according to the first aspect of the invention.

To attain the first object, according to a third aspect of the invention, there is provided an engine control unit including a control program for causing a computer to carry out control of ignition timing of an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke.

The engine control unit according to the third aspect of the invention is characterized in that the control program causes the computer to detect an engine temperature of the engine; determine which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and set a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time set the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.

This engine control unit provides the same advantageous effects as described above concerning the control system according to the first aspect of the invention.

Preferably, the ignition timing-setting module sets the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.

In general, in the case of the internal combustion engine of an in-cylinder ignition type, an air-fuel mixture is ignited in a state concentrated in the vicinity of a spark plug, and at the time of combustion, the mixture is surrounded by air, so that even if the ignition timing is advanced, knocking hardly occurs, and hence no problem is caused. Further, in the stratified combustion mode, fuel is evaporated due to thermal exchange with the piston to produce an air-fuel mixture, and therefore as the engine temperature is higher, the production of the mixture is accelerated. Therefore, by advancing the ignition timing as the engine temperature is higher, delay of ignition can be prevented to enhance the combustion efficiency of the engine. Therefore, in the control system according to the preferred embodiment, by setting the second ignition timing for the stratified combustion mode to a more advanced value than the value of the first ignition timing for the homogeneous combustion mode with respect to an identical value of the engine temperature, higher combustion efficiency and larger engine output can be obtained. As a result, the drivability and fuel economy can be positively improved.

Preferably, the step of setting the first ignition timing and the second ignition timing includes setting the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.

This preferred embodiment of the control method provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, when the control program causes the computer to set the first ignition timing and the second ignition timing, the control program causes the computer to set the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.

This preferred embodiment of the engine control unit provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.

According to this preferred embodiment, the advantageous effects provided by the control system and method and the engine control unit according to the first to third aspects of the invention and their preferred embodiments described above can be obtained in an optimized manner.

To attain the second object, according to a fourth aspect of the invention, there is provided a control system for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke.

The control system according to the fourth aspect of the invention is characterized by comprising:

a load-detecting module for detecting a load on the engine;

a combustion parameter-determining module for determining a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load;

a first ignition timing-determining module for determining the first ignition timing for the homogenous combustion mode based on the detected load; and

a second ignition timing-determining module for determining the second ignition timing for the stratified combustion mode based on the second combustion parameter.

According to this control system, the first combustion parameter for the homogeneous combustion mode other than the first ignition timing for the homogenous combustion mode and the second combustion parameter for the stratified combustion mode other than the second ignition timing for the stratified combustion mode are determined based on the load on the engine. This makes it possible to determine the first combustion parameter and the first ignition timing properly for the homogeneous combustion mode without being adversely affected by instability of intake air which can occur upon termination of transition from the stratified combustion mode to the homogeneous combustion mode, differently from the prior art in which the first combustion parameter for the homogeneous combustion mode is determined based on the amount of intake air. Further, according to this control system, the second ignition timing for the stratified combustion mode is determined based on the second combustion parameter other than the second ignition timing determined based on the load on the engine. This makes it possible to properly determine the second ignition timing by reflecting operating conditions and state of combustion of the engine thereon. As described above, by properly determining the combustion parameters including the first and second ignition timings, it is possible to ensure stable combustion in both of the homogeneous combustion mode and the stratified combustion mode.

To attain the second object, according to a fifth aspect of the invention, there is provided a control method for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke.

The control method according to the fifth aspect of the invention is characterized by comprising the steps of:

detecting a load on the engine;

determining a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load;

determining the first ignition timing for the homogenous combustion mode based on the detected load; and

determining the second ignition timing for the stratified combustion mode based on the second combustion parameter.

This control method provides the same advantageous effects as described above concerning the control system according to the fourth aspect of the invention.

To attain the second object, according to a sixth aspect of the invention, there is provided an engine control unit including a control program for causing a computer to carry out control of an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke.

The engine control unit according to the sixth aspect of the invention is characterized in that the control program causes the computer to detect a load on the engine, determine a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load, determine the first ignition timing for the homogenous combustion mode based on the detected load, and determine the second ignition timing for the stratified combustion mode based on the second combustion parameter.

This engine control unit provides the same advantageous effects as described above concerning the control system according to the fourth aspect of the invention.

Preferably, the second combustion parameter is a fuel injection timing, and the combustion parameter-determining module comprises a final fuel injection amount-determining module for determining a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load, and a fuel injection timing-determining module for determining the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.

According to this preferred embodiment of the control system, in the stratified combustion mode, the final amount of fuel to be actually injected into the cylinder in the stratified combustion mode is determined based on the load on the engine, and the fuel injection timing for fuel to be actually injected is determined based on the final amount of fuel. Further, the second ignition timing for the stratified combustion mode is determined based on the fuel injection timing. Therefore, the second ignition timing for the stratified combustion mode can be determined in a manner suited to the final amount of fuel to be actually injected and the fuel injection timing for fuel injection to be actually carried out. This further positively ensures a stable combustion of the engine.

Preferably, the second combustion parameter is a fuel injection timing, and the step of determining the first combustion parameter and the second combustion parameter comprises the steps of determining a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load, and determining the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.

This preferred embodiment of the control method provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, the second combustion parameter is a fuel injection timing, and when the control program causes the computer to determine the first combustion parameter and the second combustion parameter, the control program causes the computer to determine a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load, and determine the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.

This preferred embodiment of the engine control unit provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

More preferably, after the fuel injection timing-determining module determines the fuel injection timing for a particular cycle of combustion, the second ignition timing-determining module determines the second ignition timing based on the determined fuel injection timing for the particular cycle of combustion.

According to this preferred embodiment of the control system, the second ignition timing for the stratified combustion mode can be optimized according to the fuel injection timing of the same combustion cycle.

More preferably, after the fuel injection timing for a particular cycle of combustion is determined at the step of determining the fuel injection timing, the second ignition timing for the particular cycle of combustion is determined based on the determined fuel injection timing at the step of determining the second ignition timing.

This preferred embodiment of the control method provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

More preferably, after the control program causes the computer to determine the fuel injection timing for a particular cycle of combustion, the control program causes the computer to determine the second ignition timing for the particular cycle of combustion based on the determined fuel injection timing.

This preferred embodiment of the engine control unit provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, the load-detecting module comprises an engine rotational speed-detecting module for detecting a rotational speed of the engine, an accelerator opening-detecting module for detecting an accelerator opening, and a demanded torque-determining module for determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.

According to this preferred embodiment of the control system, the first ignition timing for the homogeneous combustion mode, and the first and second combustion parameters for the homogenous combustion mode and the stratified combustion mode can be properly determined based on the demanded torque determined based on the engine rotational speed and the accelerator opening.

Preferably, the step of detecting a load comprises the steps of detecting a rotational speed of the engine, detecting an accelerator opening, and determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.

This preferred embodiment of the control method provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, when the control program causes the computer to detect the load, the control program causes the computer to detect a rotational speed of the engine, detect an accelerator opening, and determine a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.

This preferred embodiment of the engine control unit provides the same advantageous effects as provided by the corresponding preferred embodiment of the control system.

Preferably, the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.

According to this preferred embodiment, the advantageous effects provided by the control system and method and the engine control unit according to the fourth to sixth aspects of the invention and their preferred embodiments described above can be obtained in an optimized manner.

The above and other objects, features, and advantages of the invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram schematically showing the arrangement of an internal combustion engine incorporating a control system therefor according to an embodiment of the invention;

FIG. 2 is a flowchart showing a main routine of a fuel injection control process carried out by the FIG. 1 control system;

FIG. 3 shows a map for use in determining a value of a monitor S_EMOD used at a step S1 in FIG. 2;

FIG. 4 is a flowchart showing a subroutine for carrying out a stoichiometric combustion mode control process which is executed at a step S13 in FIG. 2;

FIG. 5 is a flowchart showing a subroutine for carrying out a lean combustion mode control process which is executed at a step S14 in FIG. 2;

FIG. 6 is a flowchart showing a subroutine for carrying out a stratified combustion mode control process which is executed at a step S15 in FIG. 2;

FIG. 7 is a flowchart showing a subroutine for carrying out a two-stage fuel injection combustion mode control process which is executed at a step S16 in FIG. 2;

FIG. 8 is a flowchart showing a subroutine for a Tibase-calculating process executed in the subroutines in FIG. 4 to FIG. 7;

FIG. 9 is a flowchart showing a subroutine for an LCMD-calculating process executed in the subroutines in FIG. 4 to FIG. 7;

FIG. 10 is a flowchart showing a subroutine for a fuel injection timing-calculating process executed in the subroutines in FIG. 4 to FIG. 7;

FIG. 11 shows an example of an NE-ToutdbD table;

FIG. 12 is a flowchart showing a subroutine for carrying out a fuel injection termination timing-calculating process for a stoichiometric combustion mode, which is executed at a step S132 in FIG. 10;

FIG. 13 shows an example of a TW-IJTW table;

FIG. 14 is a flowchart showing a subroutine for carrying out a fuel injection termination timing-calculating process for a lean combustion mode, which is executed at a step S135 in FIG. 10;

FIG. 15 is a flowchart showing a subroutine for carrying out a fuel injection termination timing-calculating process for a stratified combustion mode, which is executed at a step S136 in FIG. 10;

FIG. 16 is a flowchart showing a subroutine for carrying out a fuel injection termination timing-calculating process for a two-stage fuel injection combustion mode, which is executed at a step S140 in FIG. 10;

FIG. 17 is a flowchart showing a subroutine for carrying out a KCMD-calculating process which is executed at a step S83 in FIG. 7;

FIG. 18 is a flowchart showing a main routine for carrying out a fuel injection timing control process;

FIG. 19 is a flowchart showing an IGMAP-calculating process which is execute at a step S220 in FIG. 18;

FIG. 20 is a flowchart showing an IGMAPm-retrieving process for the stoichiometric combustion mode, which is execute at a step S232 in FIG. 19;

FIG. 21 is a flowchart showing an IGMAPm-retrieving process for the lean combustion mode, which is execute at a step S234 in FIG. 19;

FIG. 22 is a flowchart showing an IGMAPm-retrieving process for the stratified combustion mode, which is execute at a step S235 in FIG. 19;

FIG. 23 is a flowchart showing a correction term-calculating process which is executed at a step S222 in FIG. 18;

FIG. 24 is a flowchart showing a subroutine for carrying out an IGTWR-calculating process which is executed at a step 285 in FIG. 23;

FIG. 25 shows an example of a TW-IGTWR table for use in the IGTWR-calculating process in FIG. 24;

FIG. 26 is a flowchart showing a variation of the IGTWR-calculating process executed at the step S285 in FIG. 23;

FIG. 27 is a flowchart showing a routine for carrying out a combustion mode transition-determining process; and

FIG. 28 is a flowchart showing a variation of the subroutine for carrying out the combustion mode transition-determining process.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The invention will now be described in detail with reference to the drawings showing a preferred embodiment thereof. Referring first to FIG. 1, there is schematically shown the arrangement of a control system for an internal combustion engine, according to an embodiment of the invention. As shown in the figure, the control system 1 includes an ECU 2. The ECU 2 carries out a fuel injection control process, an ignition timing control process, and a combustion mode transition-determining process for the internal combustion engine 3 (hereinafter simply referred to as “the engine 3”).

The engine 3 is a straight type four-cylinder gasoline engine for an automotive vehicle, not shown. The engine 3 has four cylinders (only one of which is shown) in each of which a combustion chamber 3 c is formed between the piston 3 a and a cylinder head 3 b. The piston 3 a has a central portion of a top surface thereof formed with a recess 3 d. The cylinder head 3 b has a fuel injection valve 4 (hereinafter simply referred to as “the injector 4”) and a spark plug 5 mounted therein such that they face the combustion chamber 3 c. The engine 3 is a so-called in-cylinder fuel injection type in which fuel is directly injected into the combustion chamber 3 c.

The injector 4 is arranged in a central portion of a top wall of the combustion chamber 3 c and connected to a high-pressure pump 4 b via a fuel pipe 4 a. Fuel is pressurized by the high-pressure pump to a high pressure, and then supplied to the injector 4 in a state of the pressure thereof regulated by a regulator, not shown. The fuel is injected from the injector 4 toward the recess 3 d of the piston 3 a, and hits the top surface of the piston 3 a including the recess 3 d to form fuel jets. Particularly, in a stratified combustion mode, referred to hereinafter, most of the fuel injected by the injector 4 hits the recess 3 d to form fuel jets.

A fuel pressure sensor 20 is mounted in a portion of the fuel pipe 4 a at a location in the vicinity of the injector 4. The fuel pressure sensor 20 detects a fuel pressure PF of the fuel injected by the injector 4 and delivers a signal indicative of the sensed fuel pressure PF to the ECU 2. Further, the injector 4 is electrically connected to the ECU 2, and a final fuel injection time period Tout (i.e. fuel injection amount) over which the injector 4 is open and a fuel injection timing θinj (i.e. a valve-opening timing and a valve-closing timing of the injector 4) are controlled by a drive signal delivered from the ECU 2 to the injector 4, as referred to hereinafter.

The spark plug 5 is also connected to the ECU 2, and a high voltage is applied to the spark plug 5 at an ignition timing IG indicated by a drive signal delivered from the ECU 2, for electric discharge, whereby an air-fuel mixture is burned in the combustion chamber 3 c.

The engine 3 is of a DOHC type and includes an intake camshaft 6 and an exhaust camshaft 7. The intake and exhaust cam shafts 6 and 7 have intake cams 6 a and exhaust cams 7 a, respectively, for opening and closing the intake valves 8 and exhaust valves 9. The intake and exhaust camshafts 6, 7 are connected to a crankshaft 3 e via a timing belt, not shown, and each rotate once for every two rotations of the crankshaft 3 e. The intake camshaft 6 has one end thereof provided with a cam phase change mechanism (hereinafter referred to as “VTC”) 10.

The VTC 10 is driven by oil pressure, for continuously or steplessly advancing or retarding the phase angle (hereinafter referred to as “the cam phase CAIN”) of the intake cam 6 a relative to the crankshaft 3 e, whereby the opening/closing timing of each intake valve 8 is advanced or retarded. This increases or decreases a valve overlap of the intake valve 8 and the exhaust valve 9, to thereby increase or decrease an internal EGR rate, and change the changing efficiency. The VTC 10 has a solenoid control valve 10 a connected thereto which is driven by a drive signal from the ECU 2 to supply the oil pressure from an hydraulic pump, not shown, of a lubricating system of the engine 3 to the VTC 10, according to the duty ratio of the drive signal. Thus, the VTC 10 is controlled by the ECU 2 via the solenoid control valve 11, for advancing or retarding the cam phase CAIN.

A cam angle sensor 21 is arranged at the other end of the intake camshaft 6 opposite to the one end at which the VTC 10 is arranged. The cam angle sensor 21 is comprised e.g. of a magnet rotor and an MRE (magnetic resistance element) pickup, and delivers a CAM signal, which is a pulse signal, to the ECU 2 whenever the intake camshaft 6 rotates through a predetermined cam angle (e.g. one degree). The ECU 2 determines the actual cam phase CAIN from the CAM signal and a CRK signal, referred to hereinafter.

Further, although not shown in the figure, the intake cam 6 a and the exhaust cam 7 a are each comprised of a low-speed cam, and a high-speed cam having a higher cam nose than that of the low-speed cam. Further, the engine 3 is provided with a plurality of valve timing changeover mechanisms 11 (hereinafter referred to as “the VTEC's 11”). Each VTEC 11 switches each of the intake cam 6 a and the exhaust cam 7 a of each cylinder between the low-speed cam and the high speed cam, to thereby change the valve timing of the intake valve 8 and the exhaust valve 9 between a low-speed valve timing (hereinafter referred to as “LO.VT”) and a high-speed valve timing (hereinafter referred to as “HI.VT”). During the HI.VT, the valve-opening time periods over which the respective intake valve 8 and exhaust valve 9 are open and the valve overlap over which they are simultaneously open become longer and the valve lift amounts of them also become larger than during the LO.VT, thereby realizing a higher charging efficiency. The VTEC 11 is also driven by oil pressure supplied via a VTEC solenoid control valve 11 a driven by the ECU 2, for execution of the above switching operations.

Further, the valve timing is set to LO.VT in a lean combustion mode included in a homogeneous combustion mode, the stratified combustion mode, and a two-stage fuel injection combustion mode, all referred to hereinafter, whereas it is set to HI.VT in a stoichiometric combustion mode and a rich combustion mode included in the homogeneous combustion mode, referred to hereinafter.

The crankshaft 3 e has a magnet rotor 22 a fitted thereon which constitutes a crank angle position sensor 22 together with an MRE (magnetic resistance element) pickup 22 b. The crank angle position sensor 22 (load-detecting module, engine rotational speed-detecting module) delivers to the ECU 2 the CRK signal and a TDC signal, which are both pulse signals, in accordance with rotation of the crankshaft 3 e.

Each pulse of the CRK signal (CRK signal pulse) is generated whenever the crankshaft 3 e rotates through a predetermined angle (e.g. 30 degrees). The ECU 2 determines a rotational speed NE (parameter indicative of a load on the engine, hereinafter referred to as “the engine rotational speed NE”) of the engine 3, based on the CRK signal. The TDC signal (TDC signal pulse) is indicative of a predetermined crank angle position of each cylinder in the vicinity of a top dead center (TDC) position at the start of an intake stroke of the piston 3 a in the cylinder, and each pulse of the TDC signal is generated whenever the crankshaft rotates through 180 degrees in the case of the four-cylinder engine 3 according to the embodiment. Further, the engine 3 is provided with a cylinder-discriminating sensor, not shown. The cylinder-discriminating sensor generates a cylinder-discriminating signal, which is a pulse signal for discriminating each cylinder from the other ones, to deliver the signal to the ECU 2. The ECU 2 determines which of the strokes and which crank angle position in the determined stroke each cylinder is in, based on the cylinder-discriminating signal, the CRK signal, and the TDC signal.

An engine coolant temperature sensor 23 (engine temperature-detecting module) formed of a thermistor is mounted in the cylinder block of the engine 3. The engine coolant temperature sensor 23 senses an engine coolant temperature TW (engine temperature) which is a temperature of an engine coolant circulating within the cylinder block of the engine 3, and supplies an electric signal indicative of the sensed engine coolant temperature to the ECU 2.

The engine 3 has an intake pipe 12 having a throttle valve 13 arranged therein. The throttle valve 13 is driven by an electric motor 13 a connected thereto to have its throttle valve opening (degree of opening of the throttle valve) TH varied. Further, attached to the throttle valve 7 is a throttle valve opening sensor 32 which senses the throttle valve opening TH of the throttle valve 7 to deliver a signal indicative of the sensed throttle valve opening TH to the ECU 2. The ECU 2 controls the throttle valve opening TH via the electric motor 13 a in dependence on the operating conditions of the engine 3, to thereby control the amount of intake air supplied to the engine 3.

At a location downstream of the throttle valve 13 arranged in the intake pipe 12, there is arranged an intake pipe absolute pressure sensor 24 in a manner inserted into the intake pipe 12. The intake pipe absolute pressure sensor 24 is formed e.g. by a semiconductor pressure sensor, and senses an intake pipe absolute pressure PBA within the intake pipe 12 to deliver a signal indicative of the sensed absolute pressure PBA to the ECU 2. Further, an intake air temperature sensor 25 is inserted into the intake pipe 12. The intake air temperature sensor 25 is formed of a thermistor, and senses an intake air temperature TA within the intake pipe 12 to deliver a signal indicative of the sensed intake air temperature TA to the ECU 2.

Further, the engine 3 has an EGR pipe 15 connecting between a portion of the intake pipe 12 at a location downstream of the throttle valve and a portion of an exhaust pipe 14 at a location upstream of a catalytic device, not shown, arranged in the exhaust pipe 14. Exhaust gases emitted from the engine 3 are recirculated to an intake side of the engine 3 through the EGR pipe 15 to lower a combustion temperature within the combustion chamber 3 c, whereby EGR operation is carried out to reduce NOx contained in the exhaust gases.

The EGR pipe 15 has an EGR control valve 16 mounted therein. The EGR control valve 16 is formed by a linear solenoid valve. The amount of valve lift (valve lift amount) of the EGR control valve 15 is changed linearly in response to a drive signal from the ECU 2, whereby the EGR pipe 15 is opened and closed. The EGR control valve 16 is provided with a valve lift sensor 26 that senses an actual valve lift amount LACT of the EGR control valve 16 to deliver a signal indicative of the sensed valve lift amount to the ECU 2.

The ECU 2 calculates a target valve lift amount LCMD (combustion parameter) of the EGR control valve 16 in dependence on operating conditions of the engine 3 and controls the EGR control valve 12 such that the actual valve lift amount LACT becomes equal to the target valve lift amount LCMD, to thereby control the EGR rate. The calculation of the target valve lift amount LCMD will be described in detail hereinafter.

A LAF sensor 27 is arranged in the exhaust pipe 14 at a location upstream of the catalyst device. The LAF sensor 27 is comprised of zirconia and platinum electrodes, and linearly detects the concentration of oxygen in exhaust gases in a broad air-fuel ratio range from a rich region to a lean region, to deliver a signal proportional to the sensed concentration of oxygen to the ECU 2. Further, an O2 sensor, not shown, is arranged in the exhaust pipe 14 at a location downstream of the catalyst device, for detecting oxygen concentration of exhaust gases on a downstream side of the catalyst device to deliver a signal having a signal value proportional to the detected oxygen concentration.

Further, the engine 3 has an atmospheric pressure sensor 28 mounted thereto. The atmospheric pressure sensor 28 is formed e.g. by a semiconductor pressure sensor and senses atmospheric pressure PA to deliver a signal indicative of the sensed atmospheric pressure PA to the ECU 2. Further, the ECU 2 has a battery voltage sensor 29 connected thereto. The battery voltage sensor 29 detects a voltage VB of a battery, not shown, which supplies a drive voltage to the injectors 4, and delivers a signal indicative of the sensed voltage VB to the ECU 2.

An accelerator pedal sensor 30 (load-detecting module, accelerator opening-detecting module) is mounted in an automotive vehicle on which the engine 3 is installed. The accelerator pedal sensor 30 detects an accelerator pedal opening AP, which represents an operation amount or stepping amount of an accelerator pedal, not shown, and delivers a signal indicative of the sensed accelerator pedal opening AP to the ECU 2. Further, an automatic transmission, not shown, of the engine 3 has a gear stage sensor 31 attached thereto, for detecting a gear stage NGAR of the automatic transmission to send a signal indicative of the detected gear stage to the ECU 2.

The ECU 2 (combustion mode-determining module, ignition timing-setting module, first ignition timing-determining module, second ignition timing-determining module, load-detecting module, combustion parameter-determining module, final fuel injection amount-determining module, fuel injection timing-determining module, engine rotational speed-detecting module, demanded torque-determining module) is formed by a microcomputer (not shown) including a CPU 2 a, a RAM 2 b, a ROM 2 c, and an I/O interface (not shown). The signals input from the sensors 20 to 32 to the ECU 2 are each delivered to the I/O interface for A/D conversion and waveform shaping, and then input into the CPU 2 a. The CPU 2 a carries out various kinds of arithmetic operations based on control programs, various tables and maps, referred to hereinafter, stored in the ROM 2 c, and various flags and calculation values, referred to hereinafter, stored in the RAM 2 b.

More specifically, the ECU 2 determines an operating condition of the engine from various signals of those described above, and switches the combustion mode (mode of combustion) of the engine 3 based on the result of the determination, e.g. to the stratified combustion mode when the engine is under a very low load operating condition e.g. during idling of the engine, and to the homogeneous combustion mode when the engine is in an operating condition other than the very low load operating condition. In switching the combustion mode, the ECU 2 sets the engine 3 to the two-stage fuel injection combustion mode. Further, in dependence on the combustion mode, the ECU 2 controls a final fuel injection period Tout and a fuel injection timing θinj for each injector 4 to thereby execute the fuel injection control process including the air-fuel ratio (A/F) feedback control, and at the same time, controls ignition timing IG of the spark plugs 5 and so forth.

In the stratified combustion mode, fuel is injected into the combustion chamber 3 c during the compression stroke such that most of the injected fuel hits against the recess 3 d, thereby forming fuel jets. The fuel jets and a flow of air taken in from the intake pipe 12 form an air-fuel mixture. At this time, the piston 3 a in the compression stroke is near the top dead center position, which causes the air-fuel mixture which is extremely leaner than the stoichiometric air-fuel ratio (e.g. 27 to 60) to be unevenly distributed in the combustion chamber i.e. concentrated in the vicinity of the spark plug 5 whereby the mixture is burned by stratified combustion.

On the other hand, in the homogeneous combustion mode, fuel is injected into the combustion chamber 3 c during the intake stroke such that a richer air-fuel mixture (having an air-fuel ratio of e.g. 12 to 22) than an air-fuel mixture in the stratified combustion mode is formed by fuel jets and a flow of air and homogeneously distributed in the combustion chamber 3 c, whereby the mixture is burned by homogeneous combustion.

Further, in the two-stage fuel injection combustion mode, fuel injection is carried out two times per cycle of engine operation, with a time interval therebetween, to burn an air-fuel mixture having a richer A/F (e.g. 12 to 22) than in the stratified combustion mode. The two fuel injecting operations are carried out during the intake stroke and during the compression stroke, respectively.

In the following, the fuel injection control process including the air-fuel ratio (A/F) feedback control process, which is executed by the ECU 2, will be described in detail with reference to FIGS. 2 to 17. FIG. 2 shows a main routine for carrying out this control process, which is executed by an interrupt handling routine in synchronism with input of each TDC signal pulse. As described hereinafter, in the fuel injection control process, a combustion mode monitor S_EMOD is determined at a step S1, and then various correction coefficients are calculated (steps S2 to S9). Further, depending on a value of a combustion mode transition flag F_CMOD and a value of the combustion mode monitor S_EMOD, each combustion mode control process is executed (steps S10 to S16).

First, at a step S1, the combustion mode is determined in the manner described hereafter, and a value of the combustion mode monitor S_EMOD indicative of the determined combustion mode is set. That is, demanded torque PME (parameter-indicative of a load) is determined by searching a map, not shown, based on the engine rotational speed NE and the accelerator pedal opening AP, and based on the demanded torque PME and the engine rotational speed NE, a map shown in FIG. 3 is searched to thereby determine a combustion mode and set a value of the combustion mode monitor S_EMOD. More specifically, with reference to the FIG. 3 map, it is determined that the stratified combustion mode should be selected as the combustion mode when the operating condition of the engine is in a stratified combustion region in which the demanded torque PME and the engine rotational speed NE are both low, and the combustion mode monitor S_EMOD is set to 2. When the operating condition of the engine is in a lean combustion region of a homogeneous combustion region, in which the demanded torque PME and the engine rotational speed NE are higher than in the stratified combustion region, it is determined that the lean combustion mode should be selected as the combustion mode, and the combustion mode monitor S_EMOD is set to 1. Further, when the operating condition of the engine is in a stoichiometric combustion region of the homogeneous combustion region, in which the demanded torque PME and the engine rotational speed NE are still higher than in the lean combustion region, it is determined that the stoichiometric combustion mode should be selected as the combustion mode, and the combustion mode monitor S_EMOD is set to 0. It should be noted that the stoichiometric combustion region set in the map includes not only a region in which essentially an air-fuel mixture having an air-fuel ratio equal to the stoichiometric air-fuel ratio is burned, but also a region in which an air-fuel mixture having an air-fuel ratio richer than the stoichiometric air-fuel ratio is burned. Therefore, the term “stoichiometric combustion” used hereinafter is intended to include “rich combustion”.

Then, the program proceeds to a step S2, wherein an initial value of a start-dependent correction coefficient KAST is calculated. The start-dependent correction coefficient KAST is used for increasing the fuel injection amount when the engine 3 is started.

Then, the program proceeds to a step S3, wherein a correction coefficient KOBSV is set to an initial value thereof. The correction coefficient KOBSV is a correction value used in an A/F feedback control process (steps S26, S46, S66, S86) described hereinafter.

Then, the program proceeds to a step S4, wherein the reduction of the start-depending correction coefficient KAST determined at the step S2 is carried out so as to progressively reduce the degree of an increase in the fuel injection amount to be effected by the start-dependent correction coefficient KAST as time elapses after the engine 3 has started to be cranked.

Then, the program proceeds to as a step S5, wherein a basic fuel injection time period Tist for the start of the engine is calculated.

Then, the program proceeds to a step S6, wherein a temperature-dependent correction coefficient KTW is determined by searching a map, not shown, based on the engine temperature TW and the intake pipe absolute pressure PBA.

Then, the program proceeds to a step S7, wherein an atmospheric pressure-dependent correction coefficient KPA is determined by searching a table, not shown, based on the atmospheric pressure PA.

Then, the program proceeds to a step S8, wherein a KPF-calculating process is carried out to determine a fuel pressure-dependent correction coefficient KPF. The fuel pressure-dependent correction coefficient KPF is determined by searching, a table, not shown, based on a differential pressure ΔPF between the fuel pressure PF and in-cylinder pressure PCYL. In this case, the in-cylinder pressure PCYL is estimated by searching a table, not shown, with reference to a crank angle position of each cylinder.

Then, the program proceeds to a step S9, wherein an F/C operation-determining process is carried out. In this process, it is determined whether or not the engine 3 is in an F/C (fuel cutoff) condition based on the engine rotational speed NE and the throttle valve opening TH, and set a flag indicative of the result of the determination.

Then, the program proceeds to a step S10, wherein it is determined whether or not the combustion mode transition flag F_CMOD assumes 1. The combustion mode transition flag F_CMD is set to 1 when the two-stage fuel injection combustion mode is selected as the combustion mode by a combustion mode transition-determining process (shown in FIG. 27 or FIG. 28), and to 0 when a combustion mode other than the two-stage fuel injection combustion mode is selected by the combustion mode transition-determining process. The engine 3 is controlled to enter the two-stage fuel injection combustion mode when the combustion mode undergoes transition between the lean combustion mode or the stoichiometric combustion mode and the stratified combustion mode.

When the answer to this question is negative (NO), i.e. if the engine is in a combustion mode other than the two-stage fuel injection combustion mode, the program proceeds to a step S11, wherein it is determined whether or not the combustion mode monitor S_EMOD set at the step S1 assumes 0. If the answer to this question is affirmative (YES), the program proceeds to a step S13, wherein a stoichiometric combustion mode control process, described hereinafter, is carried out, followed by terminating the program.

On the other hand, if the answer to the question of the step S11 is negative (NO), i.e. if the engine is in a combustion mode other than the stoichiometric combustion mode, the program proceeds to a step S12, wherein it is determined whether or not the combustion mode monitor S_EMOD set at the step S1 assumes 1. If the answer to this question is affirmative (YES), i.e. if the engine is in the lean combustion mode, the program proceeds to a step S14, wherein a lean combustion mode control process, described hereinafter, is carried out, followed by terminating the program.

On the other hand, if the answer to the question of the step S12 is negative (NO), i.e. if the engine is in the stratified combustion mode, the program proceeds to a step S15, wherein a stratified combustion mode control process, described hereinafter, is carried out, followed by terminating the program.

Further, if the answer to the question of the step S10 is affirmative (YES), i.e. if F_CMOD=1 holds, the program proceeds to a step S16, wherein a two-stage fuel injection combustion mode control process is carried out, followed by terminating the program.

Next, the stoichiometric combustion mode control process executed at the step S13 in FIG. 2 will be described. As shown in the figure, in this process, first, a Tibase-calculating process is carried out at a step S20 to calculate a basic fuel injection time period Tibase. Details of the Tibase-calculating process will be described hereinbelow.

Next, the program proceeds to a step S21, wherein an LCMD-calculating process is carried out. In this process, the target valve lift amount LCMD is calculated, as will be described hereinbelow.

Next, the program proceeds to a step S22, wherein a KEGR-calculating process is carried out to determine an EGR-dependent correction coefficient KEGR. In this process, the EGR-dependent correction coefficient KEGR is determined based on the demanded torque determined at the step S1, the engine rotational speed NE, the target valve lift amount LACT determined at the step S22, the actual valve lift amount LACT detected by the valve lift sensor 26, the intake pipe absolute pressure PBA, and a map value of the intake pipe absolute pressure PBAm, by searching three maps, not shown. The EGR-dependent correction coefficient KEGR compensates for a change in the amount of intake air caused by a change in the EGR rate.

Then, the program proceeds to a step S23, wherein a KCMD-calculating process is carried out to calculate a final target air-fuel ratio coefficient KCMD (combustion parameter). More specifically, first, a basic target air-fuel ratio coefficient KBS is determined by searching a map, not shown, based on the demanded torque PME determined at the step S1 and the engine rotational speed NE. Then, the basic target air-fuel ratio coefficient KBS is multiplied by the coolant temperature-dependent correction coefficient KTW determined at the step S6 to calculate the final target air-fuel ratio coefficient KCMD. The basic target air-fuel ratio coefficient KBS and the final target air-fuel ratio coefficient KCMD are expressed as equivalent ratios which are inversely proportional to respective corresponding air-fuel ratios A/F.

That is, in the KCMD-calculating process, the final target air-fuel ratio coefficient KCMD for the stoichiometric combustion mode i.e. that for the homogeneous combustion mode is calculated based on the engine rotational speed NE and demanded torque PME representative of the load on the engine, and therefore, differently from the prior art in which the coefficient KCMD is calculated based on the intake air amount, it is possible to properly calculate the final target air-fuel ratio coefficient KCMD without being adversely affected by instability of intake air upon transition from the stratified combustion mode to the homogeneous combustion mode.

Then, the program proceeds to a step S24, wherein a KTOTAL-calculating process is calculated to calculate a total correction coefficient KTOTAL. More specifically, the total correction coefficient KTOTAL is calculated by the following equation (1):

KTOTAL=KAST×KTA×KPA×KEGR×KETC  (1)

wherein KTA represents an intake air-dependent correction coefficient determined by searching a table, not shown, based on the intake air temperature TA, and KETC represents a charging efficiency-dependent correction coefficient determined by searching a table, not shown, based on the final target air-fuel ratio coefficient KCMD.

Then, the program proceeds to a step S25, wherein a KOBSV-calculating process is carried out. In this process, a correction coefficient KOBSV used at the following step S26 is calculated by estimating an air-fuel ratio on a cylinder-by-cylinder basis by using an observer.

Then, the program proceeds to a step S26, wherein the A/F feedback control process is carried out. In this process, estimated air-fuel ratio feedback control is carried out by using the final target air-fuel ratio coefficient KCMD and the correction coefficient KOBSV calculated at the respective steps S23, S26.

Then, the program proceeds to a step S27, wherein a KSTR-calculating process is carried out to calculate a feedback correction coefficient KSTR. In this process, the feedback correction coefficient KSTR is determined based on the signal from the LAF sensor 27 by using an adaptive controller of self-tuning regulator type, not shown. The feedback correction coefficient KSTR is applied to the basic fuel injection time period Tibase to dynamically compensate for time it takes for the actual air-fuel ratio to become equal to the target air-fuel ratio due to delayed response of the fuel injection system of the engine, to thereby enhance the convergence of the air-fuel ratio control.

Then, the program proceeds to a step S28, wherein a DB-compensating process is carried out. In this process, a correction value TiDB is calculated which compensates for a large change in the engine rotational speed NE. The correction value TiDB is calculated as a positive or negative value.

Then, the program proceeds to a step S29, wherein a process for calculating a direct ratio Ae and a carry-off ratio Be is carried out. In this process, the direct ratio Ae and the carry-off ratio Be as fuel behavior parameters are calculated based on the engine rotational speed NE, the intake pipe absolute pressure PBA, and other parameters indicative of operating conditions of the engine.

Then, the program proceeds to a step S30, wherein a Tout-calculating process is carried out to calculate the final fuel injection time period Tout. More specifically, the basic fuel injection time period Tibase calculated as described above is multiplied by the total correction coefficient KTOTAL, the final target air-fuel ratio coefficient KCMD and the feedback correction coefficient KSTR, and the correction value TiDB is added to the product of the above multiplication to determine a demanded fuel injection time period Tcyl(i) on a cylinder-by-cylinder basis (Tcyl(i)=Tibase×KTOTAL×KCMD×TSTR+TiDB). It should be noted that the symbol i of the demanded fuel injection time period Tcyl(i) represents a cylinder number.

Next, by using the fuel pressure-dependent correction coefficient KPF, the direct ratio Ae and the carry-off ratio Be determined as described above, the final fuel injection time period Tout(i) is calculated on a cylinder-by-cylinder basis by the following equation (2):

Tout(i)=((Tcyl(i)−Be×TWP(i)/Ae)×KPF+TiVB  (2)

The Tout(i) value corresponds to a valve-opening time period over which each injector is open for the corresponding cylinder, and therefor represents an amount of fuel to be actually injected into the cylinder. In the equation, TiVB represents an ineffective time-correction time determined based on the battery voltage, and TWP(i) an attached fuel amount-equivalent value (time) corresponding to an amount of fuel attached to each cylinder. The attached fuel amount-equivalent value TWP(i) is determined in a TWP(i)-calculating process which is executed by another routine, by using the following equation (3):

TWP(i)n=((Tout(i)−TiVB/KPF)×(1−Ae)+(1×Be)×TWP(i)n−1  (3)

wherein TWP(i)n and TWP(i)n−1 represent the present value and the immediately preceding value of the attached fuel amount-equivalent value TWP(i).

Next, the program proceeds to a step S31, wherein the fuel injection timing θinj is calculated by the fuel injection timing-calculating process. Details of this process will be described hereinbelow.

Then, the program proceeds to a step S32, wherein a purge control process is carried out, followed by terminating the program. In this process, evaporative fuel adsorbed in a canister of a purge system is delivered to the intake pipe 12, and the purge amount, i.e. the flow rate of the evaporative fuel is controlled.

FIGS. 5 and 6 show the lean combustion mode control process and the stratified combustion mode control process executed at the respective steps S14 and S15 in FIG. 2. As shown in the figures, the steps S40 to S52 and the steps S60 to S72 are the same as the steps S20 S32 of the stoichiometric combustion mode control process described above, and therefore, detailed description thereof is omitted. It should be noted that in the KCMD-calculating process at the step S43 as well, the final target air-fuel ratio coefficient KCMD for the lean combustion mode is determined based on the engine rotational speed NE and the demanded torque PME in the same manner as at the step S23. This makes it possible to determine the final target air-fuel ratio coefficient KCMD without being adversely affected by the above-mentioned instability of intake air upon transition from the stratified combustion mode to the homogeneous combustion mode.

Further, FIG. 7 shows the two-stage fuel injection combustion mode control process executed at the step S16 in FIG. 2. The steps S80 to S92 are the same as the steps S20 to S32 of the stoichiometric combustion mode control process described above, except for details of the KCMD-calculating process executed at a step S83 and therefore, detailed description of the steps other than this is omitted. The details of the KCMD-calculating process at the step S83 will be described hereinbelow.

Next, the Tibase-calculating process at the steps S20, S40, S60, S80 will be described with reference to FIG. 8. As shown in FIG. 8, in this process, first, at a step S100, it is determined whether or not a VTEC-permitting flag F_VTEC assumes 1. The VTEC-permitting flag F_VTEC is set to 1 when the valve timing is set to HI.VT, whereas the same is set to 0 when the valve timing is set to LO.VT. It should be noted that in the lean combustion mode, the stratified combustion mode and the two-stage fuel injection combustion mode, F_VTEC=0 holds since the valve timing is set to LO.VT in these modes.

If the answer to the question of the step S100 is affirmative (YES), i.e. if the valve timing is set to HI.VT, the program proceeds to a step S101, wherein a multiplier term Ati is determined by searching a map, not shown, based on the engine rotational speed NE and the actual cam phase CAIN.

Next, the program proceeds to a step S102, wherein an addend term Bti for HI.VT is determined by searching a map, not shown, based on the engine rotational speed NE and the actual cam phase CAIN.

Then, the program proceeds to a step S103, wherein the basic fuel injection time period Tibase for HI.VT is calculated by the following equation (4):

Tibase=Ati×PBA+Bti  (4)

followed by terminating the program.

On the other hand, if the answer to the question of the step S100 is negative (NO), i.e. if the valve timing is set to LO.VT, the program proceeds to a step S104, wherein a multiplier term Ati for LO.VT is determined in the same manner as at the step S101 by using another map.

Then, the program proceeds to a step S105, wherein an addend term Bti for LO.VT is determined in the same manner as at the step S102 by using another map.

Then, the program proceeds to the step S103 wherein the basic fuel injection time period Tibase for LO.VT is calculated by the following equation:

Tibase=Ati×PBA+Bti  (4)

followed by terminating the program.

Next, the LCMD-calculating process (steps S21, S41, S61, S81) for calculating the target valve lift amount LCMD will be described with reference to FIG. 9. As shown in the figure, in this process, first at a step S110, it is determined whether or not an EGR-permitting flag F_EGR assumes 1. The EGR-permitting flag F_EGR is set to 1 when the EGR operation is being executed by opening the EGR control valve 16 arranged across the EGR pipe 15 is opened to, and to 0 when the EGR operation is being inhibited by closing the EGR control valve 16.

If the answer to the question of the step S110 is negative (NO), i.e. if the EGR operation is not being executed, the present program is terminated, whereas if the answer to the question of the same is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S111, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 0. If the answer to this question is affirmative (YES), i.e. if the engine 3 is in the stoichiometric combustion mode, the program proceeds to a step S112, wherein it is determined whether or not the VTEC-permitting flag F_VTEC assumes 1.

If the answer to this question is affirmative (YES), i.e. if the valve timing is set to HI.VT, the program proceeds to a step S113, wherein a map value LMAP for the stoichiometric combustion mode and HI.VT is determined by searching a map, not shown, based on the engine rotational speed NE and the demanded torque PME. Then, the program proceeds to a step S114, wherein the map value LMAP determined at the step S113 is set to the target valve lift amount LCMD, followed by terminating the program.

On the other hand, if the answer to the question of the step S112 is negative (NO), the program proceeds to a step S115, wherein similarly to the step S113, a map valve LMAP for the stoichiometric combustion mode and LO.VT is determined by searching a map, not shown, based on the engine rotational speed NE and the demanded torque PME. Then, the step S114 is executed, followed by terminating the program.

On the other hand, if the answer to the question of the step S111 is negative (NO), i.e. if the engine 3 is not in the stoichiometric combustion mode, the program proceeds to a step S116, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 1. If the answer to this question is affirmative (YES), i.e. if the engine is in the lean combustion mode, the program proceeds to a step S117, wherein a map value LMAP for the lean combustion mode is determined in the same manner as at the steps S113, S115. Then, the step S114 is executed, followed by terminating the program.

On the other hand, if the answer to the question of the step S116 is negative (NO), i.e. if the engine 3 is in the stratified combustion mode, the program proceeds to a step S118, wherein it is determined whether or not an idle flag F_IDLE assumes 1. The idle flag F_IDLE is set to 1 when the engine 3 is idling, and set to 0 when the engine 3 is not idling.

If the answer to this question is affirmative (YES), i.e. if the engine is idling, the program proceeds to a step S119, wherein the map value LMAP for stratified combustion and idling is determined in the same manner as at the step S113. Then, the step S114 is executed, followed by terminating the program.

If the answer to the question of the step S118 is negative (NO), i.e. if the engine is not idling, the program proceeds to a step S120, wherein the map value LMAP for stratified combustion and no idling is determined in the same manner as at the step S113. Then, the step S114 is executed, followed by terminating the program. It should be noted that in the LCMD-calculating process at the step S81 in the two-stage fuel injection combustion mode, the target valve lift amount LCMD is determined in dependence on values of the flags F_EGR, F_VTEC, F_IDLE and the combustion mode monitor S_EMOD assumed before transition to the two-stage fuel injection combustion mode.

As described above, in the LCMD-calculating process as well, similarly to the final target air-fuel ratio coefficient KCMD, the target valve lift amounts LCMD for the homogeneous combustion mode and the stratified combustion are calculated based on the engine rotational speed NE and the demanded torque PME as the load on the engine. This makes it possible to determine the target valve lift amount LCMD without being adversely affected by instability of intake air upon transition from the stratified combustion mode to the homogeneous combustion mode.

Next, the fuel injection timing-calculating process executed in each of the combustion control processes (steps S31, S51, S71, S91) described hereinabove will be described with reference to FIGS. 10 to 15. In this process, as described hereinafter, the injection termination timing (combustion parameter) and the injection start timing of the fuel injection timing θinj (combustion parameter) for each combustion mode are calculated on a cylinder-by-cylinder basis. As shown in FIG. 10, first, at a step s130, it is determined whether or not the combustion mode transition flag F_CMOD assumes 0. If the answer to this question is affirmative (YES), i.e. if F_CMOD=0 holds, which means that the engine is not in the two-stage fuel injection combustion mode, the program proceeds to a step S131, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 0.

If the answer to the question is affirmative (YES), i.e. if S_EMOD=0 holds, which means that the engine 3 is in the stoichiometric combustion mode, the program proceeds to a step S132, wherein an injection termination timing-calculating process for the stoichiometric combustion mode is executed. In this process, an injection termination timing IJLOGH (injection timing for the homogeneous combustion mode, combustion parameter) is calculated.

Then, the program proceeds to a step S133, wherein an injection start timing-calculating process for the homogeneous combustion mode is carried out, followed by terminating the program. In this process, an injection start timing for the stoichiometric combustion mode is calculated back from the injection termination timing IJLOGH calculated at the step S132, by using the final fuel injection time period Tout (final amount of fuel to be injected) calculated at the step S30. The injection start timing and the injection termination timing IJLOGH are calculated as respective crank angle positions with reference to the TDC position in the intake stroke.

On the other hand, if the answer to the question of the step S131 is negative (NO), i.e. if the engine 3 is not in the stoichiometric combustion mode, the program proceeds to a step S134, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 1. If the answer to the question is affirmative (YES), i.e. if the engine 3 is in the lean combustion mode, the program proceeds to a step S135, wherein an injection termination timing-calculating process for the lean combustion mode, described in detail hereinafter, is carried out to calculate an injection termination timing IJLOGH for the lean combustion mode (fuel injection timing for the lean combustion mode).

Then, the program proceeds to the step S133, wherein the injection start timing for the lean combustion mode is calculated based on the injection termination timing IJLOGH and the final fuel injection time period Tout calculated at the respective steps S135 and S50, followed by terminating the program. The injection start timing and the injection termination timing IJLOGH for the lean combustion mode are both calculated as respective crank angle positions with reference to the TDC position in the intake stroke, similarly to those for the stoichiometric combustion mode described above.

On the other hand, if the answer to the question of the step S134 is negative (NO), i.e. if the engine 3 is in the stratified combustion mode, the program proceeds to a step S136, wherein an injection termination timing-calculating process for the stratified combustion mode is carried out to calculate an injection termination timing IJLOGD for the stratified combustion mode (combustion parameter).

Then, the program proceeds to a step S137, wherein, similarly to the step S133, the injection start timing for the stratified combustion mode is calculated based on the injection termination timing IJLOGD and the final fuel injection time period Tout calculated at the respective steps S136 and S70, followed by terminating the program. The injection start timing and the injection termination timing IJLOGD are both calculated as respective crank angle positions with reference to the TDC position in the compression stroke, differently from those for the stoichiometric combustion mode and the lean combustion mode.

On the other hand, if the answer to the question of the step S130 is negative (NO), i.e. if the engine 3 is in the two-stage fuel injection combustion mode, the program proceeds to a step S138, wherein an NE-ToutdbD table, an example of which is shown in FIG. 11, is searched based on the engine rotational speed NE, to determine a compression-stroke injection time period ToutdbD.

The compression-stroke injection time period ToutdbD is an injection time period (second injection time period) in the compression stroke, which is one of the injection time periods of the respective two injections in the two-stage fuel injection combustion mode, and the reason for determining the time period ToutdbD as described above is as follows: In the two-stage fuel injection combustion mode, in which fuel is injected two times, i.e. during the intake stroke and during the compression stroke, it is preferred that to ensure stability of combustion, as much fuel as possible is injected in the intake stroke and at the same time, to ensure excellent fuel economy and exhaust emissions, the amount of fuel injected in the compression stroke is limited to as small an amount as possible (minimum fuel injection amount) in which injected fuel can be ignited. Further, the minimum fuel injection amount in which injected fuel can be ignited during the compression stroke changes as the state of flow of air within the cylinder changes with the engine rotational speed NE, and therefore, it is required to compensate for an amount of this change in the minimum fuel injection amount. Therefore, as described above, the compression-stroke fuel injection time period ToutdbD is determined independence on the engine rotational speed NE, whereby it is possible to ensure stability of combustion. Further, the NE-ToutdbD table is configured such that as the engine rotational speed NE is higher, the compression-stroke injection time period ToutdbD becomes smaller. This is because as the engine rotational speed NE is higher, the mixture becomes easier to ignite owing to a favorable flow of the mixture within the cylinder, which allows reduction of the minimum fuel injection amount in which injected fuel can be ignited.

Next, the program proceeds to a step S139, wherein it is determined whether or not the final fuel injection time period Tout calculated at the step S90 is longer than the sum of the compression-stroke injection time period ToutdbD and a predetermined time period X_Toutdb. If the answer to this question is negative (NO), i.e. if Tout≦ToutdbD+X_Toutdb holds, the steps S136, S137 are executed, followed by terminating the program. That is, even when the engine 3 is set to the two-stage fuel injection combustion mode, if the fuel injection amount is small, the fuel is not injected two times per cycle of engine operation, but similarly to the stratified combustion mode, only the fuel injection during the compression stroke alone is performed. This is because the final fuel injection time period Tout is so short that only the minimum fuel injection amount in which injected fuel can be ignited during the compression stroke can be secured, which makes it difficult to perform fuel injection during the intake stroke.

On the other hand, if the answer to the question of the step S139 is affirmative (YES), i.e. if Tout>ToutdbD+X_Toutdb holds, the program proceeds to a step S140, wherein two injection termination timings IJLOGH, IJLOGD (during the intake stroke and during the compression stroke) for the two-stage fuel injection combustion mode are calculated in an injection termination timing-calculating process for the two-stage fuel injection combustion mode by using the final fuel injection time period Tout and the compression-stroke injection time ToutdbD calculated at the respective steps S90 and S138.

Then, the program proceeds to a step S141, wherein two injection start timings for the two-stage fuel injection combustion mode are calculated based on an injection termination timing IJLOGH for a first-stage injection (during the intake stroke) and a fuel injection time period ToutH for the first-stage injection, referred to hereinafter, and an injection termination timing IJLOGD for a second-stage injection (during the compression stroke) and a fuel injection time period ToutD for the second-stage injection, referred to hereinafter, followed by terminating the program.

Next, the injection termination timing-calculating process for the stoichiometric combustion mode, which is executed at the step S132 in FIG. 10, will be described with reference to FIG. 12. In the process, as described below, the injection termination timing IJLOGH for the stoichiometric combustion mode is calculated.

In the process, first, at a step S150, a coolant temperature-dependent correction term IJTW is determined. More specifically, the coolant temperature-dependent correction term IJTW is determined by searching a TW-IJTW table an example of which is shown in FIG. 13, based on the engine coolant temperature TW. As shown in the figure, in the TW-IJTW table, the coolant temperature-dependent correction term IJTW is set to a smaller value as the engine coolant temperature TW is higher. The correction term IJTW is thus set so as to generate torque efficiently by advancing the injection termination timing IJLOGH of the fuel injection timing θinj since fuel injected into the combustion chamber 3 c is easier to ignite as the engine coolant temperature TW is higher and hence homogeneous combustion is carried out more efficiently.

Then, at a step S151, it is determined whether or not the VTEC-permitting flag F_VTEC assumes 1. If the answer to the question is affirmative (YES), i.e. if the valve timing is set to HI.VT, the program proceeds to a step S152, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to the question is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S153, wherein a basic injection termination timing INJMAPF for HI.VT and EGR operation is determined by searching a map, not shown, based on the engine rotational speed NE and the final fuel injection time period Tout obtained at the step S30.

Then, the program proceeds to a step S155, wherein the injection termination timing IJLOGH is set to a value obtained by adding the coolant temperature-dependent correction term IJTW calculated at the step S150 to the basic injection termination timing INJMAPF, followed by terminating the program.

On the other hand, if the answer to the question of the step S152 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S154, wherein a basic injection termination timing INJMAPF for HI.VT and non-EGR operation is determined, in the same manner as at the step S153. Then, at the step S155, an injection termination timing IJLOGH for HI.VT and non-EGR operation is calculated, followed by terminating the program.

If the answer to the question of the step S151 is negative (NO), i.e. if the valve timing is set to LO.VT, the program proceeds to a step S156, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is being carried out, the program proceeds to a step S157, wherein in the same manner as at the step S153, a basic injection termination timing INJMAPF for LO.VT and EGR operation is determined. Then, at the step S155, an injection termination timing IJLOGH for LO.VT and EGR operation is calculated, followed by terminating the program.

On the other hand, if the answer to the question of the step S156 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S158, wherein in the same manner as at the step S153, a basic injection termination timing INJMAPF for LO.VT and non-EGR operation is determined. Then, the program proceeds to the step S155, wherein an injection termination timing IJLOGH for LO.VT and non-EGR operation is calculated, followed by terminating the present program.

Next, the injection termination timing-calculating process for the lean combustion mode, which is executed at the step S135 in FIG. 10, will be described with reference to FIG. 14. In this process, first, at a step S160, similarly to the step S150, the coolant temperature-dependent correction term IJTW is determined by searching the FIG. 13 TW-IJTW table based on the engine coolant temperature TW.

Then, the program proceeds to a step S161, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1. If the answer to the question is affirmative (YES), i.e. if the EGR operation is being carried out, the program proceeds to a step S162, wherein a basic injection termination timing INJMAPF for EGR operation is determined by searching a map, not shown, based on the engine rotational speed NE and the final fuel injection time period Tout determined at the step S50.

Then, the program proceeds to a step S163, and the injection termination timing IJLOGH is set to a value obtained by adding the coolant temperature-dependent correction term IJTW calculated at the step S160 to the basic injection termination timing INJMAPF, followed by terminating the program.

On the other hand, if the answer to the question of the step S161 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S164, wherein a basic injection termination timing INJMAPF for non-EGR operation is determined, in the same manner as at the step S162. Then, at the step S163, an injection termination timing IJLOGH for non-EGR operation is calculated, followed by terminating the program.

Next, the injection termination timing-calculating process for the stratified combustion mode, which is executed at the step S136 in FIG. 10, will be described with reference to FIG. 15. In this process, differently from the injection termination timing for the stoichiometric combustion mode and the lean combustion mode, the injection termination timing IJLOGD is calculated as a crank angle position after TDC of the compression stroke.

In the process, first, it is determined at a step S170 whether or not the EGR-permitting flag F_EGR assumes 1. If the answer to the question is affirmative (YES), i.e. if the EGR operation is being carried out, the program proceeds to a step S171, wherein a basic injection termination timing INJMAPF for EGR operation is determined based on the engine rotational speed NE and the final fuel injection time period Tout determined at the step S70.

Then, the program proceeds to a step S172, wherein the basic injection termination timing INJMAPF is set to the injection termination timing IJLOGD for EGR operation, followed by terminating the program.

On the other hand, if the answer to the question of the step S170 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S173, wherein a basic injection termination timing INJMAPF for non-EGR operation is determined, in the same manner as at the step S171. Then, at the step S172, the basic injection termination timing INJMAPF is set to an injection termination timing IJLOGD for non-EGR operation, followed by terminating the program.

Next, the injection termination timing-calculating process for the two-stage fuel injection combustion mode executed at the step S140 in FIG. 10 will be described with reference to FIG. 16. In this process, as will be described in detail hereinafter, the two injection termination timings IJLOGH, IJLOGD of the fuel injection timing θinj for the two-stage fuel injection combustion mode are calculated. In this case, the first-stage injection termination timing IJLOGH is calculated as a crank angle position after TDC in the intake stroke, and the second-stage injection termination timing IJLOGD is calculated as a crank angle position after TDC in the compression stroke.

In this process, first, at a step S180, similarly to the steps S150, S160, the coolant temperature-dependent correction coefficient IJTW is determined by searching the TW-IJTW table.

Then, the program proceeds to a step S181, wherein a value obtained by subtracting the compression-stroke injection time period ToutdbD determined at the step S138 from the final fuel injection time period Tout for the two-stage fuel injection combustion mode determined at the step S90 is set to the first-stage injection time period ToutH (fuel injection time period during the intake stroke).

Then, the program proceeds to a step S182, wherein the compression-stroke injection time period ToutdbD is set to the second-stage injection time period ToutD (injection time period during the compression stroke).

Next, the program proceeds to a step 183, wherein it is determined whether or not the immediately preceding value S_EMODn-1 of the combustion mode monitor assumes 0. If the answer to this question is affirmative (YES), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is the stoichiometric combustion mode, similarly to the step S156 to S158 of the injection termination timing-calculating process for the stoichiometric combustion mode, the following steps S184 to S186 are executed.

More specifically, if the answer to the question of the step S184 is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S185, wherein the map used at the step S157 is searched based on the engine rotational speed NE and the first-stage injection time period ToutH determined at the step S181 to determine a basic injection termination timing INJMAPF for the stoichiometric combustion mode and EGR operation.

On the other hand, if the answer to the question of the step S184 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S186, wherein in the same manner as at the step S185, a basic injection termination timing INJMAPF for the stoichiometric combustion mode and non-EGR operation is determined by using the map used at the step S158.

On the other hand, if the answer to the question of the step S183 is negative (NO), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is not the stoichiometric combustion mode, the following steps S187 to S189 are executed similarly to the steps S161, S162, S164 of the injection termination timing-calculating process for the lean combustion mode.

More specifically, if the answer to the question of the step S187 is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S188, wherein in the same manner as at the step S185, a basic injection termination timing INJMAPF for the lean combustion mode and EGR operation is determined by using the map used at the step S162.

On the other hand, if the answer to the question of the step S187 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S189, wherein in the same manner as at the step S185, an injection termination timing INJMAPF for the lean combustion mode and non-EGR operation is determined by using the map used at the step S164.

Following any of the steps S185, S186, S188, and S189, the program proceeds to a step S190, wherein a value obtained by adding the temperature-dependent correction term IJTW to the basic injection termination timing INJMAPF is set to the first-stage injection termination timing IJLOGH.

Next, the following steps S191 to S194 are carried out similarly to the steps S170 to S173 of the injection termination timing-calculating process for the stratified combustion mode. More specifically, it is determined at a step S191 whether or not F_EGR assumes 1. If the answer to this question is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S192, wherein a basic injection termination timing INJMAPF for the stratified combustion mode and EGR operation is determined by searching the map used at the step S171 based on the engine rotational speed NE and the second-stage injection time period ToutD determined at the step S182. Then, the program proceeds to a step S193, wherein the basic injection termination timing INJMAPF for the stratified combustion mode and EGR operation is set to the second-stage injection termination timing IJLOGD, followed by terminating the program.

On the other hand, if the answer to the question of the step S191 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S194, wherein in the same manner as at the step S192, a basic injection termination timing INJMAPF for the stratified combustion mode and non-EGR operation is determined by searching the map used at the step S173, and then the program proceeds to the step S193, wherein the basic injection termination timing INJMAPF is set to the second-stage injection termination timing IJLOGD, followed by terminating the program.

As described above, at the steps S180 to S193, the injection termination timing in the intake stroke for the two-stage fuel injection combustion mode is set to the injection termination timing IJLOGH for the homogeneous combustion mode retrieved from the map for the homogeneous combustion mode, while the injection termination timing in the compression stroke for the same mode is set to the injection termination timing IJLOGD for the stratified combustion mode retrieved from the map for the stratified combustion mode. Therefore, it is not necessary to provide a map additionally to the maps for the homogeneous combustion mode and the stratified combustion mode, whereby the number of ROMs 2 c or the capacity of the ROM 2 c can be decreased.

Next, the KCMD-calculating process at the step S83 of the FIG. 7 two-stage fuel injection combustion mode control process will be described with reference to FIG. 17. First, at a step S200, it is determined whether or not the immediately preceding value S_EMODn-1 of the combustion mode monitor assumes 0. If the answer to this question is affirmative (YES), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is the stoichiometric combustion mode, the program proceeds to a step S201, wherein it is determined whether or not the immediately preceding value of the final target air-fuel ratio coefficient KCMD stored in the RAM 2 b is equal to or higher than a predetermined value KBSST. The predetermined value KBSST is set to a value of the final target air-fuel ratio coefficient KCMD corresponding to the stoichiometric air-fuel ratio.

If the answer to this question is negative (NO), i.e. if the immediately preceding value of the final target air-fuel ratio coefficient KCMD is on a lean side with respect to the stoichiometric air-fuel ratio, the program proceeds to a step S202, wherein it is determined whether or not a flag F-PRISM assumes 1. The flag F_PRISM indicates whether or not the optimum A/F control responsive to the signal from the O2 sensor (hereinafter referred to as “the O2·A/F control”) is being executed, and set to 1 when the O2·A/F control is being executed and to 0 when the same is not being executed.

If the answer to this question is affirmative (YES), i.e. if the O2·A/F control is being executed, the program proceeds to a step S203, wherein a KCMD-calculating process for the O2·A/F control is carried out to calculate the final target air-fuel ratio coefficient KCMD, followed by terminating the program.

On the other hand, if the answer to the question of the step S202 is negative (NO), i.e. if the O2·A/F control is not being executed, the program is immediately terminated without updating the immediately preceding value of the final target air-fuel ratio coefficient KCMD stored in the RAM 2 b.

On the other hand, if the answer to the question of the step S201 is affirmative (YES), i.e. if the immediately preceding value of the final target air-fuel ratio coefficient KCMD is on a rich side with respect to the stoichiometric air-fuel ratio, the program is also immediately terminated without updating this value.

On the other hand, if the answer to the question of the step S200 is negative (NO), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is not the stoichiometric combustion mode, the program process to a step S204, wherein it is determined whether or not the immediately preceding value S_EMODn-1 of the combustion mode monitor assumes 1. If the answer to this question is affirmative (YES), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is the lean combustion mode, the program proceeds to a step S205, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S206, wherein a basic target air-fuel ratio coefficient KBS for the lean combustion mode and EGR operation is determined by searching a map, not shown, based on the demanded torque PME determined at the step S1 and the engine rotational speed NE.

Then, the program proceeds to a step S208, wherein a value obtained by multiplying the basic target air-fuel ratio coefficient KBS by the coolant temperature-dependent correction coefficient KTW determined at the step 6 is set to the final target air-fuel ratio coefficient KCMD, followed by terminating the program.

On the other hand, if the answer to the question of the step S205 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S207, wherein in the same manner as at the step S206, a basic target air-fuel ratio coefficient KBS for the lean combustion mode and non-EGR operation is determined. Next, the program proceeds to the step S208, wherein the final target air-fuel ratio coefficient KCMD is calculated, followed by terminating the program.

On the other hand, if the answer to the question of the step S204 is negative (NO), i.e. if the combustion mode before transition to the two-stage fuel injection combustion mode is the stratified combustion mode, similarly to the steps S205 to S206, steps S209 to S211 are carried out. More specifically, if the EGR operation is being executed, in the same manner as at the step S206, a basic target air-fuel ratio coefficient KBS for the stratified combustion mode and EGR operation is determined at steps S209, S210, and then the above step S208 is executed, followed by terminating the program. On the other hand, if the EGR operation is not being executed, in the same manner as at the step S206, a basic target air-fuel ratio coefficient KBS for the stratified combustion mode and non-EGR operation is determined (steps S209, S211), and then the step S208 is executed, followed by terminating the program.

Hereafter, the ignition timing control process will be described with reference to FIGS. 18 to 26. FIG. 18 shows a main routine for this process, which is executed whenever the TDC signal is received, in a manner following the fuel injection control process described above.

Referring to FIG. 18, first, at a step S220, an IGMAP-calculating process, described hereinafter, is carried out to determine a map value IGMAP for injection timing IG. Then, the program proceeds to a step S221, wherein the map value IGMAP determined at the step S220 is set to a basic injection timing IGBASi.

Then, the program proceeds to a step S222, wherein a correction term-calculating process is carried out to calculate correction terms, referred to hereinafter. Then, the program proceeds to a step S223, wherein a total correction term IGCR is calculated by applying the correction terms determined at the step S222 to the following equation (5):

IGCR=IGTW+IGIDL−IGTA−IGACCR+IGWOT−IGTWR−IGATR  (5)

Next, the program proceeds to a step S224, wherein a final injection timing IGABi is calculated by applying a value IGLOG obtained by adding the total correction term IGCR to the basic injection timing IGBASi, to the following equation (6):

IGABi−IGLOG+IGADJ=(IGBASi+IGCR)+IGADJ  (6)

followed by terminating the program. A drive signal based on the final injection timing IGABi is delivered to the spark plug 5 as a signal indicative of the ignition timing IG. In the above equation (6), IGADJ represents a correction term for correcting errors in the detected values of the rotational angles of the crankshaft 3 e and the camshaft 6 i.e. deviations from the proper values thereof, and correcting delay of signals from various sensors, and is calculated as a positive or negative value.

Hereafter, the IGMAP-calculating process executed at the step S220 in FIG. 18 will be described with reference to FIG. 19. First, at a step S230, it is determined whether or not the combustion mode transition flag F_CMOD assumes 1. If the answer to this question is negative (NO), i.e. if the engine 3 is not in the two-stage fuel injection combustion mode, the program proceeds to a step S231, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 1.

If the answer to this question is affirmative (YES), i.e. if S_EMOD=0 holds, which means that the engine 3 is in the stoichiometric combustion mode, the program proceeds to a step S232, wherein an IGMAPm-retrieving process for the stoichiometric combustion mode is carried out to determine a basic map value IGMAPm for the stoichiometric combustion mode.

On the other hand, if the answer to the question of the step S231 is negative (NO), i.e. if the engine 3 is not in the stoichiometric combustion mode, the program proceeds to a step S233, wherein it is determined whether or not the combustion mode monitor S_EMOD assumes 1. If the answer to this question is affirmative (YES), i.e. if the engine 3 is in the lean combustion mode, the program proceeds to a step S234, wherein an IGMAPm-retrieving process for the lean combustion mode, described hereinafter, is carried out to determine a basic map value IGMAPm for the lean combustion mode.

On the other hand, if the answer to the question of the step S233 is negative (NO), i.e. if S_EMOD=2 holds, which means that the engine 3 is in the stratified combustion mode, the program proceeds to a step S235, wherein an IGMAPm-retrieving process for the stratified combustion mode is carried out to determine a basic map value IGMAPm for the stratified combustion mode.

Following any of IGMAPm-retrieving processes at the above steps S232, S234, and S235, the program proceeds to a step S236, wherein a table, not shown, is searched based on the EGR-dependent correction coefficient KEGR (KEGR determined at any of the steps S22, S42, and S62) for the corresponding combustion mode to determine a KEGR-dependent correction term IGKEGR.

Then, the program proceeds to a step S237, wherein a table, not shown, is searched based on the actual cam phase CAIN, to determine a VTC-dependent correction term IGVTC.

Next, the program proceeds to the step S238, wherein the KEGR-dependent correction term IGKEGR and the VTC-dependent correction term IGVTC are added to the basic map value IGMAPm determined at any of the steps S232, S234, and S235 to thereby determine the map value IGMAP, followed by terminating the program.

On the other hand, if the answer to the question of the step S230 is affirmative (YES), i.e. if the engine 3 is in the two-stage fuel injection combustion mode, the program proceeds to a step S239, wherein a map, not shown, is searched based on the engine rotational speed NE and the second-stage injection termination timing IJLOGD (injection termination timing for the stratified combustion mode) determined at the step S193 to determine the basic map value IGMAPm.

Then, the program proceeds to a step S240, wherein the basic map value IGMAPm is set to the map value IGMAP, followed by terminating the program. Thus, in the two-stage fuel injection combustion mode, the map value IGMAP is determined based on the engine rotational speed NE and the injection termination timing IJLOGD, i.e. the fuel injection timing θinj, for the stratified combustion mode. In this case, as described hereinbefore, the engine rotational speed NE has a significant influence on the stability of combustion in the two-stage fuel injection combustion mode, and at the same time, the fuel injection timing θinj for stratified combustion mode is set to the fuel injection timing during the compression stroke in the two-stage fuel injection combustion mode. The fuel injected this time is involved in the ignition in the two-stage fuel injection combustion mode. Therefore, by setting the map value IGMAP to such a value as will enable the stable ignition in the two-stage fuel injection combustion mode, it is possible to ensure the stable combustion of the engine.

Next, the IGMAPm-retrieving process for the stoichiometric combustion mode executed at the step S232 in FIG. 19 will be described with reference to FIG. 20. In this process, the basic map value IGMAPm is determined. First, at a step S250, it is determined whether or not the VTEC-permitting flag F_VTEC assumes 1. If the answer to this question is affirmative (YES), i.e. if the valve timing is set to HI.VT, the program proceeds to a step S251, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S252, wherein a map, not shown, is searched based on the engine rotational speed NE and the demanded torque PME determined at the step S1 to determine a basic map value IGMAPm for HI.VT and EGR operation, followed by terminating the program.

On the other hand, if the answer to the question of the step S251 is negative (NO), i.e. if the EGR operation is not being executed, the program proceeds to a step S253, wherein in the same manner as at the step S252, a basic map value IGMAPm for HI.VT and non-EGR operation is determined, followed by terminating the program.

On the other hand, if the answer to the question of the step S250 is negative (NO), i.e. if the valve timing is set to LO.VT, the program proceeds to a step S254, wherein it is determined whether or not the idle flag F_IDLE assumes 1.

If the answer to this question is affirmative (YES), i.e. if the engine 3 is idling, the program proceeds to a step S255, wherein a table, not shown, is searched based on a target idle rotational speed NOBJ to determine a map value IGIDLn for idle operation. Then, the program proceeds to a step s256, wherein the map value IGIDLn for idle operation is set to the basic map value IGMAPm, followed by terminating the program.

On the other hand, if the answer to the question of the step S254 is negative (NO), i.e. if the engine 3 is not idling, the program proceeds to a step S257, wherein it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is being executed, the program proceeds to a step S258, wherein in the same manner as at the step S252, a basic map value IGMAPm for LO.VT and EGR operation is determined, followed by terminating the program.

On the other hand, if the answer to the question of the step S257 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S259, wherein in the same manner as at the step S252, a basic map value IGMAPm for LO.VT and non-EGR operation is determined, followed by terminating the program.

Next, the IGMAPm-retrieving process for the lean combustion mode executed at the step S234 in FIG. 19 will be described with reference to FIG. 21. First, at a step S260, it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is not being carried out, the program proceeds to a step S261, wherein a map, not shown, is searched based on the engine rotational speed NE and the demanded torque determined at the step S1, to determine a basic map value IGMAPm for EGR operation, followed by terminating the program.

On the other hand, if the answer to the question of the step S260 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S262, wherein in the same manner as at the step S261, a basic map value IGMAPm for non-EGR operation is determined, followed by terminating the present program.

Next, the IGMAPm-retrieving process for the stratified combustion mode at the step S235 in FIG. 19 will be described with reference to FIG. 22. First, at the step S270, it is determined whether or not the EGR-permitting flag F_EGR assumes 1.

If the answer to this question is affirmative (YES), i.e. if the EGR operation is being carried out, the program proceeds to a step S271, wherein it is determined whether or not the idle flag F_IDLE assumes 1.

If the answer to this question is affirmative (YES), i.e. if the engine 3 is idling, the program proceeds to a step S272, wherein a map, not shown, is searched based on the injection termination timing IJLOGD during the compression stroke determined at the step S172 or at the step S193 and the engine rotational speed NE, to determine a map value IGIDLn for idle operation. Then, the program proceeds to a step S273, wherein the map value IGIDLn for idle operation is set to the basic map value IGMAPm, followed by terminating the program.

On the other hand, if the answer to the question of the step S271 is negative (NO), i.e. if the engine 3 is not idling, the program proceeds to a step S274, wherein a map, not shown, is searched based on the injection termination timing IJLOGD during the compression stroke determined at the step S172 or at the step 193 and the engine rotational speed NE, to determine a basic map value IGMAPm for EGR operation, followed by terminating the program.

On the other hand, if the answer to the question of the step S270 is negative (NO), i.e. if the EGR operation is not being carried out, the program proceeds to a step S275, wherein in the same manner as at the step S274, a basic map value IGMAPm for non-EGR operation is determined based on the injection termination timing IJLOGD during the compression stroke determined at the step S172 or the step S193 and the engine rotational speed NE, followed by terminating the program.

As described above, the basic map value IGMAPm for the stratified combustion mode is determined based on the injection termination timing for the stratified combustion mode (injection termination timing during the compression stroke) IJLOGD, and at the same time, as described above, the injection termination timing IJLOGD for the stratified combustion mode is determined based on the final fuel injection period Tout indicative of an amount of fuel to be actually injected into the cylinder 3 c. That is, the basic map value IGMAPm and the ignition timing IG for the stratified combustion mode are determined as respective values suitable for the timing for actual fuel injection, and therefore, even in the stratified combustion mode in which fuel is not easy to burn, the stable combustion of fuel can be ensured.

Next, the correction term-calculating process executed at the step S222 in FIG. 18 will be described with reference to FIG. 23. As shown in the figure, first, at a step S280, an IGTW-calculating process is carried out. More specifically, a table, not shown, is searched based on the engine coolant temperature TW, to determine a low coolant temperature-dependent correction term IGTW.

Next, the program proceeds to a step S281, wherein an IGIDL-calculating process is carried out. In this process, a table, not shown, is searched based on the engine rotational speed NE during idle operation, to determine an idle rotation-dependent correction term IGIDL.

Then, the program proceeds to a step S282, wherein an IGTA-calculating process is carried out. More specifically, a table, not shown, is searched based on the intake air temperature TA to determine an intake air temperature-dependent correction term IGTA.

Then, the program proceeds to a step S283, wherein an IGACCR-calculating process is carried out. More specifically, a table, not shown, is searched based on a vehicle acceleration ACCR to determine an acceleration-dependent correction term IGACCR.

Next, the program proceeds to a step S284, wherein an IGWOT-calculating process is carried out. More specifically, a table, not shown, is searched in dependence on whether the throttle valve opening TH detected by the throttle valve opening sensor 32 is fully open, to determine a full open throttle-dependent correction term IGWOT.

Then, the program proceeds to a step S285, wherein an IGTWR-calculating process is carried out. Details of the this process will be described hereinafter.

Next, the program proceeds to a step S286, wherein an IGATR-calculating process is carried out, followed by terminating the present program. In this process, a table, not shown, is searched based on a gear stage NGAR of the automatic transmission detected by the gear stage sensor 31 to determine an AT shift-dependent correction term IGATR.

Next, the IGTWR-calculating process executed at the step S285 in FIG. 23 will be described with reference to FIG. 24. As shown in the figure, in this process, first at a step S290, it is determined whether or not S_EMOD≠2 holds. If the answer to this question is affirmative (YES), i.e. if the engine 3 is not in the stratified combustion mode, the program proceeds to a step S291, wherein a TW-IGTWR table an example of which is shown in FIG. 25 is searched based on the engine coolant temperature TW to calculate a high engine coolant temperature-dependent correction term IGTWR, followed by terminating the present program.

In the TW-IGTWR table, a curve in the solid line indicates table values of the high coolant temperature-dependent correction term IGTWR, and the table is configured such that the table value increases as the engine coolant temperature TW is higher, for the following reason: As shown in the equation (5) used at the step S223, the high coolant temperature-dependent correction term IGTWR is a subtrahend term, and hence as this value is larger, the final ignition timing IGABi, i.e. the ignition timing IG is retarded. On the other hand, in the homogeneous combustion, in general, as the engine coolant temperature TW is higher, the combustion temperature becomes higher, which causes the knocking to more readily occur. Therefore, the ignition timing IG is retarded to a larger degree by setting the high coolant temperature-dependent correction term IGTWR to a larger value as the engine coolant temperature TW is higher, thereby enabling prevention of knocking.

On the other hand, if the answer to the question of the step S290 is negative (NO), i.e. if the engine 3 is in the stratified combustion mode, the program proceeds to a step S292, wherein the high coolant temperature-dependent correction term IGTWR is calculated in the same manner as at the step S291 to calculate the high coolant temperature-dependent correction term IGTWR for the stratified combustion mode, followed by terminating the program. In this case, a curve indicated by a broken line in FIG. 25 represents table values of the high coolant temperature-dependent correction term IGTWR for the stratified combustion mode. As is apparent from the figure, this table is configured such that the table value has a tendency similar to that for the homogeneous combustion mode but is smaller than the same. That is, the amount of retardation of the ignition timing IG is configured to be smaller than that for the homogeneous combustion mode, for the following reasons (1) and (2):

(1) In the stratified combustion mode, fuel is injected to the recess 3 d of the piston 3 a, and the fuel is evaporated by thermal exchange with this portion of the piston 3 a to generate an air-fuel mixture, so that as the engine coolant temperature TW is higher, the evaporation of the mixture is promoted.

(2) Further, in the stratified combustion mode, the air-fuel mixture is ignited at the time of reaching the vicinity of the spark plug 5, and the mixture at the time of ignition is surrounded by air, so that knocking hardly occurs differently from the case of the homogeneous combustion mode.

Therefore, by using the high temperature coolant-dependent correction term IGTWR for the stratified combustion mode set as described above, the ignition timing IG for the stratified combustion mode can be set to an appropriate value more advanced than the ignition timing IG for the homogeneous combustion mode such that the characteristics (1) and (2) inherent to combustion in the stratified combustion mode described above are reflected thereon. That is, the ignition timing IG for the stratified combustion mode can be set to such a value as will enable higher combustion efficiency and larger engine output to be obtained. As a result, it is possible to improve the drivability and fuel economy in both of the homogeneous combustion mode and the stratified combustion mode.

It should be noted that the IGTWR-calculating process may be executed in a manner illustrated in FIG. 26. As shown in this figure, steps S295, S296 of this process are the same as the steps S290, S291 in FIG. 24, and hence only a step S297 will be described. At the step S297, the high coolant temperature-dependent correction term IGTWR for the stratified combustion mode is set to a value of 0. That is, in this process, when the engine is in the stratified combustion mode, the retardation of the ignition timing by the high coolant temperature-dependent correction term IGTWR is omitted. This reflects the fact that knocking hardly occurs in the stratified combustion mode as described above, and the FIG. 26 process also provides the advantageous effects described above.

Next, the combustion mode transition-determining process carried out for transition between the homogeneous combustion mode and the stratified combustion mode will be described with reference to FIG. 27. This process is executed whenever a predetermined time period (e.g. 10 msec.) elapses, according to settings of a program timer.

First, at a step S300, it is determined whether or not the combustion mode transition flag F_CMOD assumes 0. If the answer to this question is affirmative (YES), i.e. if the engine 3 is not in the two-stage fuel injection combustion mode, the program proceeds to a step S301, wherein it is determined whether or not the immediately preceding value S_EMODn-1 of the combustion mode monitor S_EMOD assumes 2 and at the same time the present value S_EMODn does not assume 2. This is for determining whether or not the operating region of the engine 3 has shifted from the stratified combustion region to the homogeneous combustion region shown in FIG. 3.

If the answer to this question is affirmative (YES), it is judged that the operating region of the engine 3 has shifted in the present loop from the stratified combustion region to the homogeneous combustion region, so that the two-stage fuel injection combustion mode should be started, and hence the program proceeds to a step S302, wherein the combustion mode transition flag F_CMOD indicative of this fact is set to 1, followed by terminating the program.

On the other hand, if the answer to the question of the step S301 is negative (NO), the program proceeds to a step S303, wherein it is determined whether or not the immediately preceding value S_EMODn-1 of the combustion mode monitor S_EMOD does not assume 2, but at the same time the present value S_EMODn assumes 2. If the answer to this question is affirmative (YES), it is judged that the operating region of the engine 3 has shifted in the present loop from the homogeneous combustion region to the stratified combustion region, and hence the engine 3 should be caused to enter the two-stage fuel injection combustion mode, so that the program proceeds to a step S304, wherein similarly to the step S302, the combustion mode transition flag F_CMOD is set to 1, followed by terminating the program.

If the answer to the question of the step S303 is negative (NO), i.e. if the operating region of the engine 3 has not shifted in the present loop between the stratified combustion region and the homogeneous combustion region, the program proceeds to a step S305, wherein the count tmCCMOD of a two-stage fuel injection combustion mode timer is set to 0, followed by terminating the program. The two-stage fuel injection combustion mode timer determines the termination timing of a duration period of the two-stage fuel injection combustion mode.

On the other hand, if the answer to the question of the step S300 is negative (NO), i.e. if the engine 3 is in the two-stage fuel injection combustion mode, the program proceeds to a step S306, wherein the count tmCCMOD of the two-stage fuel injection combustion mode timer is incremented. Then, the program proceeds to a step S307, wherein the count tmCCMOD incremented at the step S306 has exceeded a predetermined time period X_TMCCMOD (value corresponding to this period). The predetermined time period X_TMCCMOD represents the response of the EGR control valve 16, and set as a closing time period which the EGR valve 16 takes to close from a valve lift amount of 100% to a valve lift amount of 5%.

If the answer to this question is negative (NO), i.e. if tmCCMOD≦X_TMCCMOD holds, which means that the predetermined time period X_TMCCMOD has not elapsed from the start of the two-stage fuel injection combustion mode, the present program is immediately terminated to continue the two-stage fuel injection combustion mode.

On the other hand, if the answer to the question of the step S307 is affirmative (YES), i.e. if tmCCMOD>X_TMCCMOD holds, which means the predetermined time period X_TMCCMOD has elapsed after the start of the two-stage fuel injection combustion mode, it is determined that the two-stage fuel injection combustion mode should be terminated, so that the program proceeds to a step S308, wherein the combustion mode flag F_CMOD is set to 0 to indicate the above fact, followed by terminating the program.

As described above, the duration period of the two-stage fuel injection combustion mode is determined based on the predetermined time period X_TMCCMOD which is the closing time period which the EGR control valve 16 takes to close. As described above, the target valve lift amount LCMD of the EGR control valve 16 generally increases between the stratified combustion mode and the homogeneous combustion mode. Therefore, during transition between these modes, it takes time for the EGR control valve 16 to change to the target valve lift amount LCMD for the mode after the transition. Therefore, by setting the predetermined time period X_TMCCMOD which takes the response of the EGR control valve 16 into account, to the duration period of the two-stage fuel injection combustion mode as described above, the two-stage fuel injection combustion mode can be continued until the valve lift amount of the EGR control valve 16 is positively changed to that for the combustion mode after the two-stage fuel injection combustion mode. As a result, the stable combustion upon termination of the two-stage fuel injection combustion mode can be ensured, whereby e.g. stable drivability can be ensured with small changes in engine output between before and after the two-stage fuel injection combustion mode. Further, since the duration period of the two-stage fuel injection combustion mode is determined as described above, it is possible to reduce the duration period to a minimum required period, whereby degradation of exhaust emission characteristics due to an increase in NOx can be controlled to the lower level.

It should be noted that the combustion mode transition-determining process may be carried out by a method illustrated in FIG. 28 in place of the method described above. The method illustrated in FIG. 28 determines the duration period of the two-stage fuel injection combustion mode by using a difference dLACT in valve lift amount in place of the count of the two-stage fuel injection combustion mode timer. As shown in FIG. 28, steps S310 to S314 are the same as the steps S300 to S304 of the FIG. 27 process, so that detailed description of the steps S310 to S314 is omitted, but only different points will be described.

In the process, if the answer to the question of the step S313 is negative (NO), i.e. if the engine 3 is not in the two-stage fuel injection combustion mode, the present program is immediately terminated.

On the other hand, if the answer to the question of the step S310 is negative (NO), i.e. if F_CMOD=1 holds, the program proceeds to a step S315, wherein the difference dLACT in valve lift amount is calculated. The difference dLACT is calculated as the absolute value of a difference between the target valve lift amount LCMD and the actual valve lift amount LACT detected by the valve lift amount sensor 26.

Next, the program proceeds to a step S316, wherein it is determined whether or not the difference dLACT calculated at the step S315 is smaller than a predetermined difference X_DlactCM. The predetermined difference X_DlactCM is a threshold value for determining whether or not the actual valve lift amount LACT of the EGR control valve 16 is converged or changed to the target valve lift amount LCMD, and represents the response of the EGR control valve 16.

If the answer to this question is negative (NO), i.e. if dLACT≧X_DlactCM holds, it is judged that the actual lift amount LACT is not close enough to the target valve lift amount LACT, so that the program is immediately terminated.

On the other hand, if the answer to the question of the step S316 is affirmative (YES), i.e. if dLACT<X_DlactCM holds, it is judged that the actual valve lift amount of the EGR control valve 16 has become close enough to the target valve lift amount LCMD after the start of the two-stage fuel injection combustion mode, so that to terminate the two-stage fuel injection combustion mode, the program proceeds to a step S317, wherein the combustion mode transition flag F_CMOD is set to 0 to indicate this fact, followed by terminating the program. As described above, depending on whether the difference dLACT has become smaller than the predetermined difference X_DlactCM, i.e. if the actual valve lift amount of the EGR control valve 16 has substantially reached the target valve lift amount LCMD, the termination timing of the two-stage fuel injection combustion mode is determined, so that the same advantageous effects as obtained by the FIG. 27 process can be obtained.

As described above, according to the control system 1 of the present embodiment, in the homogeneous combustion mode, the ignition timing IG for the homogenous combustion mode is retarded by the high coolant temperature-dependent correction term IGTWR for the homogeneous combustion mode, whereby knocking can be prevented. Further, in the stratified combustion mode, the ignition timing IG for the stratified combustion mode is corrected by the high coolant temperature-dependant correction term IGTWR for the stratified combustion mode, whereby the ignition timing IG for the stratified combustion mode can be properly set to a value more advanced than the ignition IG for the homogeneous combustion mode, such that the characteristics of combustion inherent to stratified combustion described hereinabove are reflected thereon. This enables higher combustion efficiency and larger engine output to be obtained in the stratified combustion mode, and as a result, drivability and fuel economy can be improved in both of the homogeneous combustion mode and the stratified combustion mode.

Further, according to the control system 1 of the present embodiment, the target valve lift amount LCMD and the final target air-fuel ratio coefficient KCMD for the two combustion modes, and the fuel injection timing θinj for the homogeneous combustion mode are determined based on the engine rotational speed NE and the demanded torque PME or the engine rotational speed NE and the intake pipe absolute pressure PBA, both representative of the load on the engine. Therefore, the combustion parameters for the homogeneous combustion mode can be determined properly without being adversely affected by instability of intake air upon i.e. immediately after transition from the stratified combustion mode to the homogeneous combustion mode, differently from the prior art in which the combustion parameters are determined based on the amount of intake air.

Further, the basic map value IGMAPm of the ignition timing IG for the stratified combustion mode is determined based on the injection termination timing IJLOGD for the stratified combustion mode, and this injection termination timing IJLOGD is determined based on the final fuel injection period Tout. Thus, based on the final fuel injection period Tout indicative of an amount of fuel to be actually injected into the combustion chamber 3 c, the injection termination timing IJLOGD is determined, and at the same time, based on the injection termination timing IJLOGD thus determined, the ignition timing IG is determined. This make it possible to determine the ignition timing IG for the stratified combustion mode as a value suited to the actual injection termination timing IJLOGD. This makes it possible to ensure stable combustion of fuel even in the stratified combustion mode in which fuel is not easy to burn. As described above, in both of the homogeneous combustion mode and the stratified combustion mode, the combustion parameters including the ignition timing IG are properly determined whereby stable combustion can be ensured. As a result, it is possible to attain excellent fuel economy and drivability, and reduced exhaust emissions.

Although in the above embodiment, as the combustion parameters for both the combustion modes, the target valve lift amount LCMD, the final target air-fuel ratio coefficient KCMD, and fuel injection timing θinj are taken as examples, this is not limitative, but the throttle valve opening TH may be employed as one of the combustion parameters. In this case, the throttle valve opening TH is determined, similarly to the other combustion parameters described above, by searching maps for the respective combustion modes, based on the engine rotational speed NE and the demanded torque PME.

Further, particularly in the case of an internal combustion engine of in-cylinder injection, type as in the present embodiment, in which the injector 4 is disposed substantially in the center of a top wall of the combustion chamber 3 c, and fuel is injected from the injector 4 toward the piston 3 a, it has been confirmed by experiment that the advantageous effects of the present embodiment described above can be obtained in an optimized manner, though data of the experiment is not shown here.

It should be noted that the invention is not particularly limited to the engine 3 of in-cylinder injection type having each injector 4 is arranged in a substantially control potion of a top wall of a corresponding combustion chamber 3 c, according to the present embodiment, but the invention can be applied to other engines of in-cylinder injection type which has injectors differently arranged, for instance.

It is further understood by those skilled in the art that the foregoing is a preferred embodiment of the invention, and that various changes and modifications may be made without departing from the spirit and scope thereof. 

What is claimed is:
 1. A control system for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control system controls ignition timing of the engine, the control system comprising: an engine temperature-detecting module for detecting an engine temperature of the engine; a combustion mode-determining module for determining which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and an ignition timing-setting module for setting a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time setting the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.
 2. A control system according to claim 1, wherein the ignition timing-setting module sets the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.
 3. A control system according to claim 1, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 4. A control system according to claim 2, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 5. A control system for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, the control system comprising: a load-detecting module for detecting a load on the engine; a combustion parameter-determining module for determining a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load; a first ignition timing-determining module for determining the first ignition timing for the homogenous combustion mode based on the detected load; and a second ignition timing-determining module for determining the second ignition timing for the stratified combustion mode based on the second combustion parameter.
 6. A control system according to claim 5, wherein the second combustion parameter is a fuel injection timing, and wherein said combustion parameter-determining module comprises: a final fuel injection amount-determining module for determining a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load; and a fuel injection timing-determining module for determining the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.
 7. A control system according to claim 6, wherein after said fuel injection timing-determining module determines the fuel injection timing for a particular cycle of combustion, said second ignition timing-determining module determines the second ignition timing based on the determined fuel injection timing for the particular cycle of combustion.
 8. A control system according to claim 5, wherein said load-detecting module comprises: an engine rotational speed-detecting module for detecting a rotational speed of the engine; an accelerator opening-detecting module for detecting an accelerator opening; and a demanded torque-determining module for determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 9. A control system according to claim 6, wherein said load-detecting module comprises: an engine rotational speed-detecting module for detecting a rotational speed of the engine; an accelerator opening-detecting module for detecting an accelerator opening; and a demanded torque-determining module for determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 10. A control system according to claim 7, wherein said load-detecting module comprises: an engine rotational speed-detecting module for detecting a rotational speed of the engine; an accelerator opening-detecting module for detecting an accelerator opening; and a demanded torque-determining module for determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 11. A control system according to claim 5, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 12. A control system according to claim 6, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 13. A control system according to claim 7, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 14. A control system according to claim 8, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 15. A control method for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control method controls ignition timing of the engine, the control method comprising the steps of: detecting an engine temperature of the engine; determining which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and setting a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time setting the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.
 16. A control method according to claim 15, wherein the step of setting the first ignition timing and the second ignition timing includes setting the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.
 17. A control method according to claim 15, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 18. A control method according to claim 16, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 19. A control method for an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, the control method comprising the steps of: detecting a load on the engine; determining a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load; determining the first ignition timing for the homogenous combustion mode based on the detected load; and determining the second ignition timing for the stratified combustion mode based on the second combustion parameter.
 20. A control method according to claim 19, wherein the second combustion parameter is a fuel injection timing, and wherein the step of determining the first combustion parameter and the second combustion parameter comprises the steps of: determining a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load; and determining the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.
 21. A control method according to claim 20, wherein after the fuel injection timing for a particular cycle of combustion is determined at the step of determining the fuel injection timing, the second ignition timing for the particular cycle of combustion is determined based on the determined fuel injection timing at the step of determining the second ignition timing.
 22. A control method according to claim 19, wherein the step of detecting a load comprises the steps of: detecting a rotational speed of the engine; detecting an accelerator opening; and determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 23. A control method according to claim 20, wherein the step of detecting a load comprises the steps of: detecting a rotational speed of the engine; detecting an accelerator opening; and determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 24. A control method according to claim 21, wherein the step of detecting a load comprises the steps of: detecting a rotational speed of the engine; detecting an accelerator opening; and determining a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 25. A control method according to claim 19, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 26. A control method according to claim 20, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 27. A control method according to claim 21, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 28. A control method according to claim 22, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 29. An engine control unit including a control program for causing a computer to carry out control of ignition timing of an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control program causes the computer to detect an engine temperature of the engine; determine which of the homogeneous combustion mode and the stratified combustion mode should be selected as the combustion mode; and set a first ignition timing for the homogenous combustion mode and a second ignition timing for the stratified combustion mode to respective values different from each other, and at the same time set the first ignition timing for the homogeneous combustion mode such that the first ignition timing for the homogeneous combustion mode is more retarded as the detected engine temperature is higher.
 30. An engine control unit according to claim 29, wherein when the control program causes the computer to set the first ignition timing and the second ignition timing, the control program causes the computer to set the second ignition timing for the stratified combustion mode to a more advanced value than a value of the first ignition timing for the homogeneous combustion mode, with respect to an identical value of the detected engine temperature.
 31. An engine control unit according to claim 29, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 32. An engine control unit according to claim 30, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 33. An engine control unit including a control program for causing a computer to carry out control of an internal combustion engine of an in-cylinder fuel injection type, the engine being operated while switching a combustion mode thereof between a homogeneous combustion mode in which fuel injection into each cylinder is performed during an intake stroke, and a stratified combustion mode in which the fuel injection into the cylinder is performed during a compression stroke, wherein the control program causes the computer to detect a load on the engine, determine a first combustion parameter for the homogeneous combustion mode other than a first ignition timing for the homogenous combustion mode and a second combustion parameter for the stratified combustion mode other than a second ignition timing for the stratified combustion mode, based on the detected load, determine the first ignition timing for the homogenous combustion mode based on the detected load, and determine the second ignition timing for the stratified combustion mode based on the second combustion parameter.
 34. An engine control unit according to claim 33, wherein the second combustion parameter is a fuel injection timing, and wherein when the control program causes the computer to determine the first combustion parameter and the second combustion parameter, the control program causes the computer to determine a final amount of fuel to be injected into the cylinder in the stratified combustion mode, based on the detected load, and determine the fuel injection timing based on the determined final amount of fuel to be injected into the cylinder.
 35. An engine control unit according to claim 34, wherein after the control program causes the computer to determine the fuel injection timing for a particular cycle of combustion, the control program causes the computer to determine the second ignition timing for the particular cycle of combustion based on the determined fuel injection timing.
 36. An engine control unit according to claim 33, wherein when the control program causes the computer to detect the load, the control program causes the computer to detect a rotational speed of the engine, detect an accelerator opening, and determine a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 37. An engine control unit according to claim 34, wherein when the control program causes the computer to detect the load, the control program causes the computer to detect a rotational speed of the engine, detect an accelerator opening, and determine a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 38. An engine control unit according to claim 35, wherein when the control program causes the computer to detect the load, the control program causes the computer to detect a rotational speed of the engine, detect an accelerator opening, and determine a demanded torque based on the detected rotational speed of the engine and detected accelerator opening, as the load.
 39. An engine control unit according to claim 33, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 40. An engine control unit according to claim 34, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 41. An engine control unit according to claim 35, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom.
 42. An engine control unit according to claim 36, wherein the engine includes a fuel injection valve for injecting the fuel into the cylinder, the cylinder having a top wall facing a combustion chamber, and wherein the fuel injection valve is arranged in a central portion of the top wall such that the fuel injection valve injects the fuel downward therefrom. 